| /****************************************************************************** |
| * Copyright (c) 2000-2019 Ericsson AB |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v2.0 |
| * which accompanies this distribution, and is available at |
| * https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html |
| * |
| * Contributors: |
| * Gabor Szalai - initial implementation and initial documentation |
| ******************************************************************************/ |
| // |
| // File: TS29503_Nudm_SDM.ttcn |
| // Description: Type definitions for 3GPP TS29503 |
| /////////////////////////////////////////////// |
| module TS29503_Nudm_SDM { |
| |
| import from TS29571_CommonData all |
| import from TS29509_Nausf_SoRProtection all |
| |
| external function f_enc_SubscriptionDataSets(in SubscriptionDataSets pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_SubscriptionDataSets(in octetstring stream, out SubscriptionDataSets pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_Nssai(in Nssai pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_Nssai(in octetstring stream, out Nssai pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_AccessAndMobilitySubscriptionData(in AccessAndMobilitySubscriptionData pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_AccessAndMobilitySubscriptionData(in octetstring stream, out AccessAndMobilitySubscriptionData pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_SmfSelectionSubscriptionData(in SmfSelectionSubscriptionData pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_SmfSelectionSubscriptionData(in octetstring stream, out SmfSelectionSubscriptionData pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_UeContextInSmfData(in UeContextInSmfData pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_UeContextInSmfData(in octetstring stream, out UeContextInSmfData pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_SmsSubscriptionData(in SmsSubscriptionData pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_SmsSubscriptionData(in octetstring stream, out SmsSubscriptionData pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_SmsManagementSubscriptionData(in SmsManagementSubscriptionData pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_SmsManagementSubscriptionData(in octetstring stream, out SmsManagementSubscriptionData pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_SdmSubscription(in SdmSubscription pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_SdmSubscription(in octetstring stream, out SdmSubscription pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_ModificationNotification(in ModificationNotification pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_ModificationNotification(in octetstring stream, out ModificationNotification pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_IdTranslationResult(in IdTranslationResult pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_IdTranslationResult(in octetstring stream, out IdTranslationResult pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_AcknowledgeInfo(in AcknowledgeInfo pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_AcknowledgeInfo(in octetstring stream, out AcknowledgeInfo pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| |
| type set of DataSetName DatasetNames |
| |
| type set SubscriptionDataSets { |
| AccessAndMobilitySubscriptionData amData optional, |
| SmfSelectionSubscriptionData smfSelData optional, |
| UeContextInSmfData uecSmfData optional, |
| UeContextInSmsfData uecSmsfData optional, |
| SmsSubscriptionData smsSubsData optional, |
| set of SessionManagementSubscriptionData smData optional, |
| TS29571_CommonData.TraceData traceData optional, |
| SmsManagementSubscriptionData smsMngData optional |
| } |
| |
| type set UeContextInSmsfData { |
| SmsfInfo smsfInfo3GppAccess optional, |
| SmsfInfo smsfInfoNon3GppAccess optional |
| } |
| |
| type set SmsfInfo { |
| TS29571_CommonData.NfInstanceId smsfInstanceId, |
| TS29571_CommonData.PlmnId plmnId |
| } |
| |
| type set AccessAndMobilitySubscriptionData { |
| TS29571_CommonData.SupportedFeatures supportedFeatures optional, |
| set of TS29571_CommonData.Gpsi gpsis optional, |
| set of InternalGroupId internalGroupIds optional, |
| TS29571_CommonData.Ambr subscribedUeAmbr optional, |
| Nssai nssai optional, |
| set of TS29571_CommonData.RatType ratRestrictions optional, |
| set of TS29571_CommonData.Area forbiddenAreas optional, |
| TS29571_CommonData.ServiceAreaRestriction serviceAreaRestriction optional, |
| set of TS29571_CommonData.CoreNetworkType coreNetworkTypeRestrictions optional, |
| TS29571_CommonData.RfspIndex rfspIndex optional, |
| TS29571_CommonData.DurationSec subsRegTimer optional, |
| UeUsageType ueUsageType optional, |
| MpsPriorityIndicator mpsPriority optional, |
| TS29571_CommonData.DurationSec activeTime optional, |
| DlPacketCount dlPacketCount optional, |
| SorInfo sorInfo optional, |
| MicoAllowed micoAllowed optional, |
| SharedDataIds sharedDataIds optional |
| } |
| |
| type set SmfSelectionSubscriptionData { |
| TS29571_CommonData.SupportedFeatures supportedFeatures optional, |
| set of SnssaiInfo subscribedSnssaiInfos optional |
| } |
| |
| type set SnssaiInfo { |
| TS29571_CommonData.Snssai singleNssai, |
| set of DnnInfo dnnInfos |
| } |
| |
| type set DnnInfo { |
| TS29571_CommonData.Dnn dnn, |
| DnnIndicator defaultDnnIndicator optional, |
| LboRoamingAllowed lboRoamingAllowed optional, |
| IwkEpsInd iwkEpsInd optional, |
| LadnIndicator ladnIndicator optional |
| } |
| |
| type set Nssai { |
| TS29571_CommonData.SupportedFeatures supportedFeatures optional, |
| set of TS29571_CommonData.Snssai defaultSingleNssais optional, |
| set of TS29571_CommonData.Snssai singleNssais optional |
| } |
| |
| type set UeContextInSmfData { |
| set of record { |
| universal charstring key, |
| PduSession additionalProperties |
| } pduSessions optional, |
| set of PgwInfo pgwInfo optional |
| } with { |
| variant (pduSessions) "as map" |
| } |
| |
| |
| type set PduSession { |
| TS29571_CommonData.PduSessionId pduSessionId, |
| TS29571_CommonData.Dnn dnn, |
| TS29571_CommonData.NfInstanceId smfInstanceId, |
| TS29571_CommonData.PlmnId plmnId |
| } |
| |
| type set PgwInfo { |
| TS29571_CommonData.Dnn dnn, |
| charstring pgwFqdn, |
| TS29571_CommonData.PlmnId plmnId optional |
| } |
| |
| type set SessionManagementSubscriptionData { |
| TS29571_CommonData.Snssai singleNssai, |
| record of record { |
| universal charstring key, |
| DnnConfiguration additionalProperties |
| } dnnConfiguration optional |
| } with { |
| variant (dnnConfiguration) "as map" |
| } |
| |
| |
| type set DnnConfiguration { |
| TS29571_CommonData.Dnn dnn, |
| PduSessionTypes pduSessionTypes, |
| SscModes sscModes, |
| IwkEpsInd iwkEpsInd optional, |
| LadnIndicator ladnIndicator optional, |
| FiveGQosProfile fivegQosProfile optional, |
| TS29571_CommonData.Ambr sessionAmbr optional, |
| ThreeGppChargingCharacteristics threegppChargingCharacteristics optional, |
| IpAddress staticIpAddress optional, |
| TS29571_CommonData.UpSecurity upSecurity optional |
| } with { |
| variant (fivegQosProfile) "name as '5gQosProfile'" |
| variant (threegppChargingCharacteristics) "name as '3gppChargingCharacteristics'" |
| } |
| |
| type set IpAddress { |
| TS29571_CommonData.Ipv4Addr ipv4Addr optional, |
| TS29571_CommonData.Ipv6Addr ipv6Addr optional, |
| TS29571_CommonData.Ipv6Prefix ipv6Prefix optional |
| } |
| |
| type set PduSessionTypes { |
| TS29571_CommonData.PduSessionType defaultSessionType, |
| set of TS29571_CommonData.PduSessionType allowedSessionTypes optional |
| } |
| |
| type set SscModes { |
| TS29571_CommonData.SscMode defaultSscMode, |
| set of TS29571_CommonData.SscMode allowedSscModes optional |
| } |
| |
| type set FiveGQosProfile { |
| TS29571_CommonData.FiveQi fiveqi, |
| TS29571_CommonData.NonDynamic5Qi nonDynamic5Qi optional, |
| TS29571_CommonData.Dynamic5Qi dynamic5Qi optional, |
| TS29571_CommonData.Arp arp optional |
| } with { |
| variant (fiveqi) "name as '5qi'" |
| } |
| |
| |
| type set SmsSubscriptionData { |
| SmsSubscribed smsSubscribed, |
| SharedDataIds sharedDataIds optional |
| } |
| |
| type set SmsManagementSubscriptionData { |
| TS29571_CommonData.SupportedFeatures supportedFeatures optional, |
| boolean mtSmsSubscribed, |
| boolean mtSmsBarringAll optional, |
| boolean mtSmsBarringRoaming optional, |
| boolean moSmsSubscribed, |
| boolean moSmsBarringAll optional, |
| boolean moSmsBarringRoaming optional, |
| SharedDataIds sharedDataIds optional |
| } |
| |
| type set SdmSubscription { |
| TS29571_CommonData.NfInstanceId nfInstanceId, |
| boolean implicitUnsubscribe optional, |
| TS29571_CommonData.DateTime expires optional, |
| TS29571_CommonData.Uri callbackReference optional, |
| set of TS29571_CommonData.Uri monitoredResourceUris optional, |
| TS29571_CommonData.Snssai singleNssai optional, |
| TS29571_CommonData.Dnn dnn optional |
| } |
| |
| type set ModificationNotification { |
| set of TS29571_CommonData.NotifyItem notifyItems |
| } |
| |
| type set IdTranslationResult { |
| TS29571_CommonData.SupportedFeatures supportedFeatures optional, |
| TS29571_CommonData.Supi supi, |
| TS29571_CommonData.Gpsi gpsi optional |
| } |
| |
| type set AcknowledgeInfo { |
| TS29509_Nausf_SoRProtection.SorMac sorMacIue optional |
| } |
| |
| type set SorInfo { |
| set of TS29509_Nausf_SoRProtection.SteeringInfo steeringInfoList, |
| TS29509_Nausf_SoRProtection.AckInd ackInd, |
| TS29509_Nausf_SoRProtection.SorMac sorMacIausf, |
| TS29509_Nausf_SoRProtection.CounterSor countersor |
| } |
| |
| type set of SharedDataId SharedDataIds |
| |
| type set SharedData { |
| SharedDataId sharedDataId, |
| AccessAndMobilitySubscriptionData sharedAmData optional, |
| SmsSubscriptionData sharedSmsSubsData optional, |
| SmsManagementSubscriptionData sharedSmsMngSubsData optional |
| } |
| |
| type integer UeUsageType |
| |
| type boolean MpsPriorityIndicator |
| |
| type boolean DnnIndicator |
| |
| type boolean LboRoamingAllowed |
| |
| type boolean LadnIndicator |
| |
| type boolean SmsSubscribed |
| |
| type charstring ThreeGppChargingCharacteristics |
| |
| type integer DlPacketCount (-1..infinity) |
| |
| type charstring InternalGroupId |
| |
| type boolean MicoAllowed |
| |
| type charstring SharedDataId // (pattern "^[0-9]{5,6}-.+$") |
| |
| type boolean IwkEpsInd |
| |
| type enumerated DataSetName_enum { AM, SMF_SEL, UEC_SMF, UEC_SMSF, SMS_SUB, SM, TRACE, SMS_MNG} |
| |
| type union DataSetName { |
| DataSetName_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| |
| |
| |
| |
| } with { |
| encode "JSON" |
| } |