From 262f9893d0971a62886ec14e84f2019cabcc2ffb Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 3 Oct 2025 15:57:52 +0000 Subject: [PATCH 1/7] Edit _3gpp-common-yang-types.yang --- yang-models/_3gpp-common-yang-types.yang | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 815d55d57..dc174eb5a 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -16,6 +16,7 @@ module _3gpp-common-yang-types { TTA, TTC). All rights reserved."; reference "3GPP TS 28.623"; + revision 2025-10-06 { reference CR-0581; } revision 2025-08-18 { reference CR-1557; } revision 2025-08-06 { reference CR-0563; } revision 2025-02-18 { reference CR-0511; } @@ -1195,10 +1196,9 @@ module _3gpp-common-yang-types { location specified by 'fileLocation'. The file location may identify any entity such as a file server or a MnS consumer. The identified MnS consumer may or may not be identical to the MnS consumer creating - the 'PerfMetricJob'. As for CHOICE_1 the MnS producer may emit - 'notifyFileReady' and 'notifyFilePreparationError' notifications to - inform subscribers that a file has been made available at the location - specified by 'fileLocation'. + the 'PerfMetricJob'. The MnS producer may emit 'notifyFileReady' and + 'notifyFilePreparationError' notifications to inform subscribers that + a file has been made available at the location specified by 'fileLocation'. - When only the streamTarget attribute is present, the MnS producer shall stream the data to the location specified by streamTarget. -- GitLab From 81536514627caa66288571c36a683a045a3688a1 Mon Sep 17 00:00:00 2001 From: lengyelb Date: Thu, 6 Nov 2025 13:00:07 +0100 Subject: [PATCH 2/7] Edit _3gpp-common-fm.yang update to follow stage-2 + invariant raisetime --- yang-models/_3gpp-common-fm.yang | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang index f557faf94..c33acc07d 100755 --- a/yang-models/_3gpp-common-fm.yang +++ b/yang-models/_3gpp-common-fm.yang @@ -529,6 +529,7 @@ module _3gpp-common-fm { mandatory true; config false ; yext3gpp:notNotifyable; + yext3gpp:inVariant; } leaf alarmChangedTime { @@ -702,6 +703,7 @@ module _3gpp-common-fm { } list comments { + config false ; yext3gpp:notNotifyable; description "List of comments and data about the comments."; key idx; @@ -785,10 +787,13 @@ module _3gpp-common-fm { type string; config false ; yext3gpp:notNotifyable; + description "It carries the identity of the detector of the security alarm."; } list correlatedNotifications { key sourceObjectInstance; + config false ; + yext3gpp:notNotifyable; description "List of correlated notifications"; leaf sourceObjectInstance { -- GitLab From dd181e72cf3e24d7e5b0c479f4edc5fddc93d7e3 Mon Sep 17 00:00:00 2001 From: lengyelb Date: Thu, 6 Nov 2025 13:08:08 +0100 Subject: [PATCH 3/7] Edit _3gpp-common-subscription-control.yang updated to follow 32.160 clause 6.2.11.2 --- yang-models/_3gpp-common-subscription-control.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang index 784cba09c..1978b8c51 100755 --- a/yang-models/_3gpp-common-subscription-control.yang +++ b/yang-models/_3gpp-common-subscription-control.yang @@ -132,7 +132,7 @@ module _3gpp-common-subscription-control { description "Scopes (selects) data nodes in an object tree."; key idx; max-elements 1; - leaf idx { type string; } + leaf idx { type uint32; } uses ScopeGrp; } -- GitLab From 2feb3ca4657ec5f9ff28e0bdba6c8010806a1320 Mon Sep 17 00:00:00 2001 From: lengyelb Date: Thu, 6 Nov 2025 13:10:24 +0100 Subject: [PATCH 4/7] Edit _3gpp-common-subscription-control.yang update revision statement --- yang-models/_3gpp-common-subscription-control.yang | 1 + 1 file changed, 1 insertion(+) diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang index 1978b8c51..1fd0ec8c3 100755 --- a/yang-models/_3gpp-common-subscription-control.yang +++ b/yang-models/_3gpp-common-subscription-control.yang @@ -19,6 +19,7 @@ module _3gpp-common-subscription-control { Solution Set (SS) definitions 3GPP TS 28.623"; + revision 2025-11-06 { reference CR-0585 ; } revision 2025-03-30 { reference CR-0517 ; } revision 2024-05-18 { reference CR-0359 ; } revision 2024-01-18 { reference "CR-0309 CR-0329" ; } -- GitLab From 94b3971381062f45eff05bcb52eda83a94c6337f Mon Sep 17 00:00:00 2001 From: lengyelb Date: Thu, 6 Nov 2025 15:58:24 +0100 Subject: [PATCH 5/7] Edit _3gpp-common-fm.yang - corrected spelling error. --- yang-models/_3gpp-common-fm.yang | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang index c33acc07d..f68452456 100755 --- a/yang-models/_3gpp-common-fm.yang +++ b/yang-models/_3gpp-common-fm.yang @@ -16,6 +16,7 @@ module _3gpp-common-fm { TTA, TTC). All rights reserved."; reference "3GPP TS 28.111"; + revision 2025-11-06 { reference "CR-0056"; } revision 2025-08-13 { reference "CR-0053 CR-0054"; } revision 2025-05-01 { reference "CR-0042 CR-0043"; } // common for R18, R19 revision 2025-03-25 { reference "CR-0025 CR-0026"; } @@ -283,7 +284,7 @@ module _3gpp-common-fm { enum EXTERNAL_TRANSMISSION_DEVICE_FAILURE { value 552; } enum REDUCED_ALARM_REPORTING { value 561; } enum REDUCED_EVENT_REPORTING { value 562; } - enum RECUCED_LOGGING_CAPABILITY { value 563; } + enum REDUCED_LOGGING_CAPABILITY { value 563; } enum SYSTEM_RESOURCES_OVERLOAD { value 564; } enum BROADCAST_CHANNEL_FAILURE { value 565; } enum CONNECTION_ESTABLISHMENT_ERROR { value 566; } -- GitLab From fd6bb6aa1456bded8563ed43103e934d4f897e04 Mon Sep 17 00:00:00 2001 From: rosabolzek Date: Thu, 6 Nov 2025 23:13:59 +0100 Subject: [PATCH 6/7] create _3gpp-5gc-nrm-managed-nfprofile.yang and update files to use --- yang-models/_3gpp-5gc-nrm-amffunction.yang | 11 +- yang-models/_3gpp-5gc-nrm-ausffunction.yang | 11 +- yang-models/_3gpp-5gc-nrm-lmffunction.yang | 16 +- .../_3gpp-5gc-nrm-managed-nfprofile.yang | 410 ++++++++++++++++++ yang-models/_3gpp-5gc-nrm-neffunction.yang | 11 +- yang-models/_3gpp-5gc-nrm-ngeirfunction.yang | 10 +- yang-models/_3gpp-5gc-nrm-nssffunction.yang | 9 +- yang-models/_3gpp-5gc-nrm-nwdaffunction.yang | 11 +- yang-models/_3gpp-5gc-nrm-pcffunction.yang | 12 +- yang-models/_3gpp-5gc-nrm-smffunction.yang | 11 +- yang-models/_3gpp-5gc-nrm-smsffunction.yang | 9 +- yang-models/_3gpp-5gc-nrm-udmfunction.yang | 9 +- yang-models/_3gpp-5gc-nrm-udrfunction.yang | 9 +- yang-models/_3gpp-5gc-nrm-udsffunction.yang | 12 +- yang-models/_3gpp-5gc-nrm-upffunction.yang | 9 +- yang-models/_3gpp-common-yang-types.yang | 219 +--------- 16 files changed, 523 insertions(+), 256 deletions(-) create mode 100644 yang-models/_3gpp-5gc-nrm-managed-nfprofile.yang diff --git a/yang-models/_3gpp-5gc-nrm-amffunction.yang b/yang-models/_3gpp-5gc-nrm-amffunction.yang index 9cfa03617..6198cdf64 100755 --- a/yang-models/_3gpp-5gc-nrm-amffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-amffunction.yang @@ -12,14 +12,16 @@ module _3gpp-5gc-nrm-amffunction { import _3gpp-common-top { prefix top3gpp; } import _3gpp-nr-nrm-gnbcuupfunction { prefix gnbcuup3gpp; } import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "AMFFunction derived from basic ManagedFunction. - Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-08-18 { reference CR-1557 ; } revision 2024-10-06 { reference CR-1389; } revision 2024-04-04 { reference CR-1139; } @@ -490,10 +492,13 @@ module _3gpp-5gc-nrm-amffunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - uses types3gpp:ManagedNFProfile; - description ""; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } list commModelList { diff --git a/yang-models/_3gpp-5gc-nrm-ausffunction.yang b/yang-models/_3gpp-5gc-nrm-ausffunction.yang index e2648cdd3..f14c95bef 100755 --- a/yang-models/_3gpp-5gc-nrm-ausffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-ausffunction.yang @@ -8,19 +8,20 @@ module _3gpp-5gc-nrm-ausffunction { import _3gpp-common-managed-element { prefix me3gpp; } import ietf-inet-types { prefix inet; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-yang-extensions { prefix yext3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the AUSF function in 5GC. For more information about the AUSF, see 3GPP TS 23.501. - Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2022-01-07 { reference CR-0643; } revision 2020-11-06 { reference CR-0412 ; } @@ -116,9 +117,13 @@ module _3gpp-5gc-nrm-ausffunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } list commModelList { diff --git a/yang-models/_3gpp-5gc-nrm-lmffunction.yang b/yang-models/_3gpp-5gc-nrm-lmffunction.yang index 6069ae513..e40f61929 100755 --- a/yang-models/_3gpp-5gc-nrm-lmffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-lmffunction.yang @@ -9,13 +9,15 @@ module _3gpp-5gc-nrm-lmffunction { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; description "This IOC represents the LMF function defined in 3GPP TS 23.501. - Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2019-10-25 { reference "S5-194457 S5193518"; } @@ -29,9 +31,9 @@ module _3gpp-5gc-nrm-lmffunction { uses mf3gpp:ManagedFunctionGrp; list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). The PLMN Identifier is composed of + a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; min-elements 1; max-elements 6; key "mcc mnc"; @@ -40,8 +42,12 @@ module _3gpp-5gc-nrm-lmffunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } list commModelList { diff --git a/yang-models/_3gpp-5gc-nrm-managed-nfprofile.yang b/yang-models/_3gpp-5gc-nrm-managed-nfprofile.yang new file mode 100644 index 000000000..ce019ea6c --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-managed-nfprofile.yang @@ -0,0 +1,410 @@ +module _3gpp-5gc-nrm-managed-nfprofile { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-managed-nfprofile; + prefix mnfp3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import ietf-inet-types { prefix inet; } + import ietf-yang-types { prefix yang; } + import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } + +organization "3gpp SA5"; +contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; +description "NF profile class. +Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, +TTA, TTC). All rights reserved."; + reference "3GPP TS 29.510"; + + revision 2025-11-06 { reference CR-1639 ; } + revision 2025-11-06 { reference "initial revision"; } + + grouping SPNInfoIdGrp { + description "This data type represents the SNPN identification + consisting of MCC, MNC, and optionally NID."; + leaf mcc { + type string; + description "Mobile Country Code (MCC) of the SNPN."; + } + + leaf mnc { + type string; + description "Mobile Network Code (MNC) of the SNPN."; + } + + leaf nId { + type string; + description "Network Identifier (NID) of the SNPN."; + } + } + + grouping SupiRangeGrp { + leaf start { + description "First value identifying the start ofa SUPI range.To be + used when the range of SUPI's can be represented as a numeric range + (e.g., IMSI ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf end { + description "Last value identifying the end of a SUPI range.To be + used when the range of SUPI's can be represented as a numeric range + (e.g. IMSI ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf pattern { + description "Pattern representing the set of SUPI's belonging to + this range.A SUPI value is considered part of the range if and + only if the SUPI string fully matches the regular expression."; + type string; + } + } + + grouping ConditionItemGrp { + description "This data type represents a single condition item that + shall be evaluated to determine whether a discovered NF (Service) + Instance shall be selected."; + + leaf consumerNfTypes { + description "It represents the NF types of the consumers for + which the conditions included in this ConditionItem apply. + If this attribute is absent, the conditions are applicable + to all NF consumer types."; + type types3gpp:NfType; + } + leaf serviceFeature { + description "It represents a feature number of that NF Service + Instance,under CANARY_RELEASE status. This attribute only + applies when the selectionConditions, where this + ConditionItem is included, is included in a NF Service Instance + This condition is evaluated to when the service requests + froma consumer of this NF Service Instance require the support + of the indicated feature on the NF Service Instance."; + type uint32; // positive integer, 0 excluded by context + } + leaf vsServiceFeature { + description "It represents a Vendor-Specific feature + number of thatNF Service Instance, under CANARY_RELEASE + status. This attribute only applies when the + selectionConditions, where this ConditionItem is included, + is included in a NF Service Instance.This condition is + evaluated to true when the service requests from a + consumer of this NF Service Instance require the support + of the indicated Vendor-Specific feature on the NF + Service Instance."; + type uint32; + } + list supiRangeList { + description "It represents a set of SUPIs for which + the NF (Service) instance under CANARY_RELEASE status shall + be selected."; + key idx; + leaf idx { type uint32; } + uses SupiRangeGrp; + } + list gpsiRangeList { + description "It represents a set of GPSIs for which the NF + (Service) + instance under CANARY_RELEASE status shall be selected"; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses IdentityRange; + } + list impuRangeList { + description "It represents a set of IMS Public Identities + for which the NF (Service) instance under CANARY_RELEASE + status shall be selected"; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses IdentityRange; + } + list impiRangeList { + description "It represents a set of IMS Private Identities + for which theNF (Service) instance under + CANARY_RELEASE status shall be selected."; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses IdentityRange; + } + leaf peiList { + description "It represents a set of PEIs of the UEs for + which the NF(Service) instance under CANARY_RELEASE status + shall be selected"; + type string; + } + list taiRangeList { + description "It represents a set of TAIs where the + NF(Service) instance under CANARY_RELEASE status shall + be selected for a certain UE"; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses nfp3gpp:TaiRangeGrp; + } + leaf dnnList { + description " It represents a set of TAIs where the NF + (Service) instance under CANARY_RELEASE status shall be + selected for a certain UE"; + type string; + } + } + grouping PlmnSnssai { + list plmnId { + description "PLMN ID for which list of supported S-NSSAI(s) + is provided."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + list sNssaiList { + description "The specific list of S-NSSAIs supported + by the given PLMN."; + min-elements 1; + max-elements 1; + key "sst sd"; + uses types3gpp:SNssai; + } + leaf nid { + description "Network Identity; Shall be present if PlmnIdNid + identifies an SNPN "; + reference "see clauses 5.30.2.3, 5.30.2.9, 6.3.4, + and 6.3.8 in 3GPP TS 23.501 "; + type string; + } + } + + grouping IdentityRange { + leaf start { + description "First value identifying the start of an identity range. + To be used when the range of identities can be represented + as a numeric range (e.g., MSISDN ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + leaf end {type string; } // dummy + leaf pattern {type string; } // dummy + } + +grouping ManagedNFProfileGrp { + + leaf nfInstanceId { + description "String uniquely identifying a NF instance."; + mandatory true; + type string; + } + + leaf nfType { + description "Type of Network Function."; + mandatory true; + type types3gpp:NfType; + } + + leaf heartBeatTimer { + description "Time in seconds expected between 2 consecutive + heart-beat messages from an NF Instance to the NRF. + It may be included in the registration request. + When present in the request it shall contain the + heartbeat time proposed by the NF service consumer."; + type uint16; + } + + leaf hostAddr { + mandatory true; + type inet:host ; + description "Host address of a NF"; + } + + leaf authzInfo { + description "This parameter defines NF Specific Service authorization + information. It shall include the NF type (s) and NF realms/origins + allowed to consume NF Service(s) of NF Service Producer "; + reference "TS 23.501"; + type string; + } + + list allowedPlmns { + description "PLMNs allowed to access the NF instance. + If not provided, any PLMN is allowed to access the NF."; + min-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list sNPNList { + key "mcc mnc nId"; + description "SNPN(s) of the Network Function. This attributeIE shall be + present if the NF pertains to one or more SNPNs."; + reference "TS 29.510"; + uses SPNInfoIdGrp; + } + + list allowedSNPNs { + description "SNPNs allowed to access the NF instance. + The absence of this attribute in the NF profile indicates that no SNPN, + other than the SNPN(s) registered in the snpnList attribute of the + NF Profile, is allowed to access the service instance"; + key "mCC mNC"; + uses types3gpp:SNPNIdGrp; + } + + leaf-list allowedNfTypes { + description "Type of the NFs allowed to access the NF instance. + If not provided, any NF type is allowed to access the NF."; + min-elements 1; + type types3gpp:NfType; + } + + leaf-list allowedNfDomains { + description "Pattern (regular expression according to the ECMA-262 + dialect [75]) representing the NF domain names within the PLMN of + the NRF allowed to access the NF instance If not provided, + any NF domain is allowed to access the NF."; + type string; + } + + list allowedNSSAIs { + description "S-NSSAI of the allowed slices to access the NF instance. + If not provided, any slice is allowed to access the NF."; + key "sst sd"; + uses types3gpp:SNssai; + } + + leaf locality { + description "Operator defined information about the location + of the NF instance (e.g. geographic location, data center)."; + type string; + } + + leaf capacity { + description "Static capacity information in the range of 0-65535, + expressed as a weight relative to other NF instances of + the same type; if capacity is also present in the nfServiceList + parameters, those will have precedence over this value."; + type uint16; + } + + leaf-list recoveryTime { + description "Timestamp when the NF was (re)started. The NRF shall notify + NFs subscribed to receiving notifications of changes of the NF profile, + if the NF recoveryTime is changed"; + type yang:date-and-time; + } + leaf nfServicePersistence { + description "This parameter indicates whether the different service + instances of a same NF Service in the NF instance, supporting a same + API version, are capable to persist their resource state in shared + storage and therefore these resources are available after a new NF + service instance supporting the same API version is selected by a NF + Service Consumer "; + reference "TS 29.510"; + type boolean; + } + leaf-list nfSetIdList { + type string ; + min-elements 1; + description "A NF Set Identifier is a globally unique identifier of + a set of equivalent and interchangeable CP NFs from a given network + that provide distribution, redundancy and scalability + (see clause 5.21.3 of 3GPP TS 23.501 [2]).An NF Set Identifier shall + be constructed from the MCC, MNC, NID (for SNPN), NF type and a Set ID. + A NF Set Identifier shall be formatted as the following string: + set.set.5gc.mnc.mcc for a NF Set in a PLMN, or + set.set.5gc.nid.mnc.mcc for a NF Set + in a SNPN.At most one NF Set ID shall be indicated per PLMN-ID or SNPN + of the NF."; + } + leaf-list nfProfileChangesSupportInd { + description "This parameter indicates if the NF Service Consumer supports + or does not support receiving NF Profile Changes. It may be present in + the NFRegister or NFUpdate (NF Profile Complete Replacement) request and + shall be absent in the response (see Annex B 3GPP TS 29.510 [23]). "; + max-elements 1; + type boolean; + } + leaf-list nfProfilePartialUpdateChangesSupportInd { + description "It represents NF Profile Partial Update Changes Support + Indicator. TRUE: the NF Service Consumer supports receiving NF Profile + Changes in the response to an NF Profile Partial Update operation. + FALSE (default): the NF Service Consumer does not support receiving + NF Profile Changes in the response to an NF Profile Partial Update + operation"; + max-elements 1; + type boolean; + } + + list defaultNotificationSubscriptions { + description "Notification endpoints for different notification types. + This attribute may contain multiple default subscriptions for a same + notification type; in that case, those default subscriptions are used + as alternative notification endpoints."; + key notificationType; + min-elements 1; + uses types3gpp:DefaultNotificationSubscription; + } + leaf servingScope { + description "This parameter indicates the served geographical areas + of a NF instance."; + type string; + } + leaf-list lcHSupportInd { + description "This parameter indicates whether the NF supports or does + not support Load Control based on LCI Header."; + reference "clause 6.3 of 3gpp TS 29.500"; + max-elements 1; + type boolean; + } + leaf-list olcHSupportInd { + description "This parameter indicates whether the NF supports or does + not support Overload Control based on OCI Header ."; + reference "clause 6.4 of 3gpp TS 29.500"; + max-elements 1; + type boolean; + } + leaf-list nfSetRecoveryTimeList { + description "This parameter contains the recovery time of NF Set(s) + indicated by the NfSetId, where the NF instance belongs."; + type yang:date-and-time ; + max-elements 1; + } + leaf-list serviceSetRecoveryTimeList { + description "This parameter contains the recovery time of NF Service + Set(s) configured in the NF instance, which are indicated by the + NfServiceSetId"; + type yang:date-and-time ; + max-elements 1; + } + leaf scpDomains { + description "This parameter shall carry the list of SCP domains the + SCP belongs to, or the SCP domain the NF (other than SCP) or the SEPP + belongs to.."; + type string; + } + leaf vendorId { + description "Vendor ID of the NF instance, according to the + IANA-assigned SMI Network Management Private Enterprise Codes [77]. + allowedValues: 6 decimal digits; if the SMI code has less than + 6 digits, it shall be padded with leading digits 0 to complete + a 6-digit string value."; + type string; + } + + leaf-list interPlmnFqdn { + description "If the NF needs to be discoverable by other + NFs in a different PLMN, then an FQDN that is used + for inter-PLMN routing is specified."; + type inet:domain-name; + } + +} +} + diff --git a/yang-models/_3gpp-5gc-nrm-neffunction.yang b/yang-models/_3gpp-5gc-nrm-neffunction.yang index c62337c47..ff23641cf 100755 --- a/yang-models/_3gpp-5gc-nrm-neffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-neffunction.yang @@ -11,6 +11,7 @@ module _3gpp-5gc-nrm-neffunction { import _3gpp-common-yang-extensions { prefix yext3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -20,6 +21,7 @@ module _3gpp-5gc-nrm-neffunction { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-08-18 { reference CR-1557 ; } revision 2024-05-18 { reference CR-1273 ; } revision 2024-04-12 { reference CR-1218 ; } @@ -294,11 +296,14 @@ module _3gpp-5gc-nrm-neffunction { } list managedNFProfile { - description "This parameter defines profile for managed NF(See TS 23.501)"; + key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - key idx; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } leaf-list capabilityList { diff --git a/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang b/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang index b7fdcfd39..c25fda301 100755 --- a/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang +++ b/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang @@ -9,15 +9,17 @@ module _3gpp-5gc-nrm-ngeirfunction { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the 5G-EIR function in 5GC. For more information about the 5G-EIR, see 3GPP TS 23.501. - Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2022-01-07 { reference CR-0643; } revision 2020-11-06 { reference CR-0412 ; } @@ -54,9 +56,13 @@ module _3gpp-5gc-nrm-ngeirfunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } list commModelList { diff --git a/yang-models/_3gpp-5gc-nrm-nssffunction.yang b/yang-models/_3gpp-5gc-nrm-nssffunction.yang index ec22c27b5..478b411b1 100755 --- a/yang-models/_3gpp-5gc-nrm-nssffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-nssffunction.yang @@ -9,6 +9,7 @@ module _3gpp-5gc-nrm-nssffunction { import ietf-inet-types { prefix inet; } import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -18,6 +19,7 @@ module _3gpp-5gc-nrm-nssffunction { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-08-18 { reference CR-1557; } revision 2023-09-18 { reference CR-1043 ; } revision 2023-04-26 { reference CR-0916; } @@ -70,10 +72,13 @@ module _3gpp-5gc-nrm-nssffunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - description "Profile definition of a Managed NF (See TS 23.501)"; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } } diff --git a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang index 8c39bda67..2b89b0b79 100755 --- a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang @@ -12,15 +12,17 @@ module _3gpp-5gc-nrm-nwdaffunction { import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the NWDAF function in 5GC. For more information about the NWDAF, see 3GPP TS 23.501. - Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-08-18 { reference CR-1557; } revision 2024-08-06 { reference CR-1130; } revision 2024-04-12 { reference CR-1218; } @@ -302,10 +304,13 @@ module _3gpp-5gc-nrm-nwdaffunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - description "Profile definition of a Managed NF (See TS 23.501)"; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } list commModelList { diff --git a/yang-models/_3gpp-5gc-nrm-pcffunction.yang b/yang-models/_3gpp-5gc-nrm-pcffunction.yang index 39c04624b..4d8938db6 100755 --- a/yang-models/_3gpp-5gc-nrm-pcffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-pcffunction.yang @@ -10,15 +10,17 @@ module _3gpp-5gc-nrm-pcffunction { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the PCF function in 5GC. For more information about the PCF, see 3GPP TS 23.501. - Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-08-18 { reference CR-1557; } revision 2024-05-24 { reference CR-1273 ; } revision 2023-09-18 { reference CR-1043 ; } @@ -64,11 +66,15 @@ module _3gpp-5gc-nrm-pcffunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - description "Profile definition of a Managed NF (See TS 23.501)"; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } + list commModelList { min-elements 1; key "groupId"; diff --git a/yang-models/_3gpp-5gc-nrm-smffunction.yang b/yang-models/_3gpp-5gc-nrm-smffunction.yang index 3434b290c..5fee82f3a 100755 --- a/yang-models/_3gpp-5gc-nrm-smffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-smffunction.yang @@ -9,14 +9,16 @@ module _3gpp-5gc-nrm-smffunction { import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import ietf-inet-types { prefix inet; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "SMFFunction derived from basic ManagedFunction. - Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-08-18 { reference CR-1557; } revision 2024-05-24 { reference CR-1273 ; } revision 2023-09-18 { reference CR-1043 ; } @@ -67,10 +69,13 @@ module _3gpp-5gc-nrm-smffunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - description "Profile definition of a Managed NF (See TS 23.501)"; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } list commModelList { diff --git a/yang-models/_3gpp-5gc-nrm-smsffunction.yang b/yang-models/_3gpp-5gc-nrm-smsffunction.yang index 61c7d1242..27c93cc2b 100755 --- a/yang-models/_3gpp-5gc-nrm-smsffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-smsffunction.yang @@ -9,6 +9,7 @@ module _3gpp-5gc-nrm-smsffunction { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; description "This IOC represents the SMSF function defined in 3GPP TS 23.501. @@ -16,6 +17,7 @@ module _3gpp-5gc-nrm-smsffunction { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } @@ -39,8 +41,13 @@ module _3gpp-5gc-nrm-smsffunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; - uses types3gpp:ManagedNFProfile; + max-elements 1; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } list commModelList { diff --git a/yang-models/_3gpp-5gc-nrm-udmfunction.yang b/yang-models/_3gpp-5gc-nrm-udmfunction.yang index 4cb978103..4adc1024a 100755 --- a/yang-models/_3gpp-5gc-nrm-udmfunction.yang +++ b/yang-models/_3gpp-5gc-nrm-udmfunction.yang @@ -10,6 +10,7 @@ module _3gpp-5gc-nrm-udmfunction { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -19,6 +20,7 @@ module _3gpp-5gc-nrm-udmfunction { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-08-18 { reference CR-1557; } revision 2024-04-04 { reference CR-1139; } revision 2023-09-18 { reference CR-1043 ; } @@ -62,10 +64,13 @@ module _3gpp-5gc-nrm-udmfunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - description "Profile definition of a Managed NF (See TS 23.501)"; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } list commModelList { diff --git a/yang-models/_3gpp-5gc-nrm-udrfunction.yang b/yang-models/_3gpp-5gc-nrm-udrfunction.yang index c8524d627..494a1f862 100755 --- a/yang-models/_3gpp-5gc-nrm-udrfunction.yang +++ b/yang-models/_3gpp-5gc-nrm-udrfunction.yang @@ -9,6 +9,7 @@ module _3gpp-5gc-nrm-udrfunction { import ietf-inet-types { prefix inet; } import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -18,6 +19,7 @@ module _3gpp-5gc-nrm-udrfunction { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-08-18 { reference CR-1557; } revision 2023-09-18 { reference CR-1043 ; } revision 2023-04-26 { reference CR-0916; } @@ -61,10 +63,13 @@ module _3gpp-5gc-nrm-udrfunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - description "Profile definition of a Managed NF (See TS 23.501)"; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } } diff --git a/yang-models/_3gpp-5gc-nrm-udsffunction.yang b/yang-models/_3gpp-5gc-nrm-udsffunction.yang index fb11ce46d..d5ad23dd1 100755 --- a/yang-models/_3gpp-5gc-nrm-udsffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-udsffunction.yang @@ -9,15 +9,17 @@ module _3gpp-5gc-nrm-udsffunction { import ietf-inet-types { prefix inet; } import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the UDSF function which can be interacted with any other 5GC NF defined in 3GPP TS 23.501. - Copyright 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, + Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved."; reference "3GPP TS 28.541"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-08-18 { reference CR-1557; } revision 2023-09-18 { reference CR-1043 ; } revision 2023-04-26 { reference CR-0916; } @@ -61,11 +63,13 @@ module _3gpp-5gc-nrm-udsffunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - description "Managed Network Function profile"; - reference "3GPP TS 23.501"; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } } diff --git a/yang-models/_3gpp-5gc-nrm-upffunction.yang b/yang-models/_3gpp-5gc-nrm-upffunction.yang index 460f26a1d..149087a55 100755 --- a/yang-models/_3gpp-5gc-nrm-upffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-upffunction.yang @@ -8,6 +8,7 @@ module _3gpp-5gc-nrm-upffunction { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -16,6 +17,7 @@ module _3gpp-5gc-nrm-upffunction { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-08-18 { reference CR-1557; } revision 2024-05-24 { reference CR-1273 ; } revision 2023-09-18 { reference CR-1043 ; } @@ -58,10 +60,13 @@ module _3gpp-5gc-nrm-upffunction { list managedNFProfile { key idx; + leaf idx { type uint32; } min-elements 1; max-elements 1; - description "Profile definition of a Managed NF (See TS 23.501)"; - uses types3gpp:ManagedNFProfile; + description "This data type represents a Profile definition of a + Managed NF "; + reference "See TS 23.501"; + uses mnfp3gpp:ManagedNFProfileGrp; } leaf-list supportedBMOList { diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index dc174eb5a..27a9ba370 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -16,6 +16,7 @@ module _3gpp-common-yang-types { TTA, TTC). All rights reserved."; reference "3GPP TS 28.623"; + revision 2025-11-06 { reference CR-1639 ; } revision 2025-10-06 { reference CR-0581; } revision 2025-08-18 { reference CR-1557; } revision 2025-08-06 { reference CR-0563; } @@ -422,224 +423,6 @@ module _3gpp-common-yang-types { type string; } } - // grouping ManagedNFProfile will be removed as it is - // being moved to _3gpp-5gc-nrm-nfprofile - grouping ManagedNFProfile { - description "Defines profile for managed NF"; - reference "3GPP TS 23.501"; - - leaf idx { type uint32 ; } - - leaf nfInstanceID { - config false; - mandatory true; - type yang:uuid ; - description "This parameter defines profile for managed NF. - The format of the NF Instance ID shall be a - Universally Unique Identifier (UUID) version 4, - as described in IETF RFC 4122 " ; - yext3gpp:inVariant; - } - - leaf-list nfType { - config false; - min-elements 1; - type NfType; - description "Type of the Network Function" ; - } - leaf heartBeatTimer { - description "Time in seconds expected between 2 consecutive - heart-beat messages from an NF Instance to the NRF. - It may be included in the registration request. - When present in the request it shall contain the - heartbeat time proposed by the NF service consumer."; - type uint16; - } - - leaf hostAddr { - mandatory true; - type inet:host ; - description "Host address of a NF"; - } - - leaf authzInfo { - type string ; - description "This parameter defines NF Specific Service authorization - information. It shall include the NF type (s) and NF realms/origins - allowed to consume NF Service(s) of NF Service Producer."; - reference "See TS 23.501" ; - } - list allowedPlmns { - description "PLMNs allowed to access the NF instance. - If not provided, any PLMN is allowed to access the NF."; - min-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list sNPNList { - key "mcc mnc nId"; - description "SNPN(s) of the Network Function. This attributeIE shall be - present if the NF pertains to one or more SNPNs."; - reference "TS 29.510"; - uses SPNInfoIdGrp; - } - list allowedSNPNs { - description "SNPNs allowed to access the NF instance. - The absence of this attribute in the NF profile indicates that no SNPN, - other than the SNPN(s) registered in the snpnList attribute of the - NF Profile, is allowed to access the service instance"; - key "mCC mNC"; - uses SNPNIdGrp; - } - - leaf-list allowedNfTypes { - description "Type of the NFs allowed to access the NF instance. - If not provided, any NF type is allowed to access the NF."; - min-elements 1; - type types3gpp:NfType; - } - - leaf-list allowedNfDomains { - description "Pattern (regular expression according to the ECMA-262 - dialect [75]) representing the NF domain names within the PLMN of - the NRF allowed to access the NF instance If not provided, - any NF domain is allowed to access the NF."; - type string; - } - - list allowedNSSAIs { - description "S-NSSAI of the allowed slices to access the NF instance. - If not provided, any slice is allowed to access the NF."; - key "sst sd"; - uses SNssai; - } - - leaf location { - type string ; - description "Information about the location of the NF instance - (e.g. geographic location, data center) defined by operator"; - reference "TS 29.510" ; - } - - leaf capacity { - mandatory true; - type uint16 ; - description "This parameter defines static capacity information - in the range of 0-65535, expressed as a weight relative to other - NF instances of the same type; if capacity is also present in the - nfServiceList parameters, those will have precedence over this value."; - reference "TS 29.510" ; - } - leaf-list recoveryTime { - description "Timestamp when the NF was (re)started. The NRF shall notify - NFs subscribed to receiving notifications of changes of the NF profile, - if the NF recoveryTime is changed"; - type yang:date-and-time; - } - leaf nfServicePersistence { - description "This parameter indicates whether the different service - instances of a same NF Service in the NF instance, supporting a same - API version, are capable to persist their resource state in shared - storage and therefore these resources are available after a new NF - service instance supporting the same API version is selected by a NF - Service Consumer "; - reference "TS 29.510"; - type boolean; - } - leaf-list nfSetIdList { - type string ; - min-elements 1; - description "A NF Set Identifier is a globally unique identifier of - a set of equivalent and interchangeable CP NFs from a given network - that provide distribution, redundancy and scalability - (see clause 5.21.3 of 3GPP TS 23.501 [2]).An NF Set Identifier shall - be constructed from the MCC, MNC, NID (for SNPN), NF type and a Set ID. - A NF Set Identifier shall be formatted as the following string: - set.set.5gc.mnc.mcc for a NF Set in a PLMN, or - set.set.5gc.nid.mnc.mcc for a NF Set - in a SNPN.At most one NF Set ID shall be indicated per PLMN-ID or SNPN - of the NF."; - } - leaf-list nfProfileChangesSupportInd { - description "This parameter indicates if the NF Service Consumer supports - or does not support receiving NF Profile Changes. It may be present in - the NFRegister or NFUpdate (NF Profile Complete Replacement) request and - shall be absent in the response (see Annex B 3GPP TS 29.510 [23]). "; - max-elements 1; - type boolean; - } - list defaultNotificationSubscriptions { - description "Notification endpoints for different notification types. - This attribute may contain multiple default subscriptions for a same - notification type; in that case, those default subscriptions are used - as alternative notification endpoints."; - key notificationType; - min-elements 1; - uses types3gpp:DefaultNotificationSubscription; - } - leaf servingScope { - description "This parameter indicates the served geographical areas - of a NF instance."; - type string; - } - leaf-list lcHSupportInd { - description "This parameter indicates whether the NF supports or does - not support Load Control based on LCI Header."; - reference "clause 6.3 of 3gpp TS 29.500"; - max-elements 1; - type boolean; - } - leaf-list olcHSupportInd { - description "This parameter indicates whether the NF supports or does - not support Overload Control based on OCI Header ."; - reference "clause 6.4 of 3gpp TS 29.500"; - max-elements 1; - type boolean; - } - leaf-list nfSetRecoveryTimeList { - description "This parameter contains the recovery time of NF Set(s) - indicated by the NfSetId, where the NF instance belongs."; - type yang:date-and-time ; - max-elements 1; - } - leaf-list serviceSetRecoveryTimeList { - description "This parameter contains the recovery time of NF Service - Set(s) configured in the NF instance, which are indicated by the - NfServiceSetId"; - type yang:date-and-time ; - max-elements 1; - } - leaf scpDomains { - description "This parameter shall carry the list of SCP domains the - SCP belongs to, or the SCP domain the NF (other than SCP) or the SEPP - belongs to.."; - type string; - } - leaf vendorId { - description "Vendor ID of the NF instance, according to the - IANA-assigned SMI Network Management Private Enterprise Codes [77]. - allowedValues: 6 decimal digits; if the SMI code has less than - 6 digits, it shall be padded with leading digits 0 to complete - a 6-digit string value."; - type string; - } - leaf-list interPlmnFqdn { - description "If the NF needs to be discoverable by other - NFs in a different PLMN, then an FQDN that is used - for inter-PLMN routing is specified."; - type inet:domain-name; - } - - - leaf-list smfServingAreas { - type string ; - description "Defines the SMF service area(s) the UPF can serve. - Shall be present if ../nfType = UPF"; - reference "TS 29.510" ; - } - - } typedef usageState { type enumeration { -- GitLab From c2352febb4f6b2737136a853db4cee18d67c031c Mon Sep 17 00:00:00 2001 From: rosabolzek Date: Thu, 6 Nov 2025 23:21:14 +0100 Subject: [PATCH 7/7] correct lint errors --- .../_3gpp-5gc-nrm-managed-nfprofile.yang | 820 +++++++++--------- 1 file changed, 410 insertions(+), 410 deletions(-) diff --git a/yang-models/_3gpp-5gc-nrm-managed-nfprofile.yang b/yang-models/_3gpp-5gc-nrm-managed-nfprofile.yang index ce019ea6c..a11cfc270 100644 --- a/yang-models/_3gpp-5gc-nrm-managed-nfprofile.yang +++ b/yang-models/_3gpp-5gc-nrm-managed-nfprofile.yang @@ -1,410 +1,410 @@ -module _3gpp-5gc-nrm-managed-nfprofile { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-managed-nfprofile; - prefix mnfp3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import ietf-inet-types { prefix inet; } - import ietf-yang-types { prefix yang; } - import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } - -organization "3gpp SA5"; -contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; -description "NF profile class. -Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, -TTA, TTC). All rights reserved."; - reference "3GPP TS 29.510"; - - revision 2025-11-06 { reference CR-1639 ; } - revision 2025-11-06 { reference "initial revision"; } - - grouping SPNInfoIdGrp { - description "This data type represents the SNPN identification - consisting of MCC, MNC, and optionally NID."; - leaf mcc { - type string; - description "Mobile Country Code (MCC) of the SNPN."; - } - - leaf mnc { - type string; - description "Mobile Network Code (MNC) of the SNPN."; - } - - leaf nId { - type string; - description "Network Identifier (NID) of the SNPN."; - } - } - - grouping SupiRangeGrp { - leaf start { - description "First value identifying the start ofa SUPI range.To be - used when the range of SUPI's can be represented as a numeric range - (e.g., IMSI ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - - leaf end { - description "Last value identifying the end of a SUPI range.To be - used when the range of SUPI's can be represented as a numeric range - (e.g. IMSI ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - - leaf pattern { - description "Pattern representing the set of SUPI's belonging to - this range.A SUPI value is considered part of the range if and - only if the SUPI string fully matches the regular expression."; - type string; - } - } - - grouping ConditionItemGrp { - description "This data type represents a single condition item that - shall be evaluated to determine whether a discovered NF (Service) - Instance shall be selected."; - - leaf consumerNfTypes { - description "It represents the NF types of the consumers for - which the conditions included in this ConditionItem apply. - If this attribute is absent, the conditions are applicable - to all NF consumer types."; - type types3gpp:NfType; - } - leaf serviceFeature { - description "It represents a feature number of that NF Service - Instance,under CANARY_RELEASE status. This attribute only - applies when the selectionConditions, where this - ConditionItem is included, is included in a NF Service Instance - This condition is evaluated to when the service requests - froma consumer of this NF Service Instance require the support - of the indicated feature on the NF Service Instance."; - type uint32; // positive integer, 0 excluded by context - } - leaf vsServiceFeature { - description "It represents a Vendor-Specific feature - number of thatNF Service Instance, under CANARY_RELEASE - status. This attribute only applies when the - selectionConditions, where this ConditionItem is included, - is included in a NF Service Instance.This condition is - evaluated to true when the service requests from a - consumer of this NF Service Instance require the support - of the indicated Vendor-Specific feature on the NF - Service Instance."; - type uint32; - } - list supiRangeList { - description "It represents a set of SUPIs for which - the NF (Service) instance under CANARY_RELEASE status shall - be selected."; - key idx; - leaf idx { type uint32; } - uses SupiRangeGrp; - } - list gpsiRangeList { - description "It represents a set of GPSIs for which the NF - (Service) - instance under CANARY_RELEASE status shall be selected"; - min-elements 1; - key idx; - leaf idx { type uint32; } - uses IdentityRange; - } - list impuRangeList { - description "It represents a set of IMS Public Identities - for which the NF (Service) instance under CANARY_RELEASE - status shall be selected"; - min-elements 1; - key idx; - leaf idx { type uint32; } - uses IdentityRange; - } - list impiRangeList { - description "It represents a set of IMS Private Identities - for which theNF (Service) instance under - CANARY_RELEASE status shall be selected."; - min-elements 1; - key idx; - leaf idx { type uint32; } - uses IdentityRange; - } - leaf peiList { - description "It represents a set of PEIs of the UEs for - which the NF(Service) instance under CANARY_RELEASE status - shall be selected"; - type string; - } - list taiRangeList { - description "It represents a set of TAIs where the - NF(Service) instance under CANARY_RELEASE status shall - be selected for a certain UE"; - min-elements 1; - key idx; - leaf idx { type uint32; } - uses nfp3gpp:TaiRangeGrp; - } - leaf dnnList { - description " It represents a set of TAIs where the NF - (Service) instance under CANARY_RELEASE status shall be - selected for a certain UE"; - type string; - } - } - grouping PlmnSnssai { - list plmnId { - description "PLMN ID for which list of supported S-NSSAI(s) - is provided."; - min-elements 1; - max-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - list sNssaiList { - description "The specific list of S-NSSAIs supported - by the given PLMN."; - min-elements 1; - max-elements 1; - key "sst sd"; - uses types3gpp:SNssai; - } - leaf nid { - description "Network Identity; Shall be present if PlmnIdNid - identifies an SNPN "; - reference "see clauses 5.30.2.3, 5.30.2.9, 6.3.4, - and 6.3.8 in 3GPP TS 23.501 "; - type string; - } - } - - grouping IdentityRange { - leaf start { - description "First value identifying the start of an identity range. - To be used when the range of identities can be represented - as a numeric range (e.g., MSISDN ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - leaf end {type string; } // dummy - leaf pattern {type string; } // dummy - } - -grouping ManagedNFProfileGrp { - - leaf nfInstanceId { - description "String uniquely identifying a NF instance."; - mandatory true; - type string; - } - - leaf nfType { - description "Type of Network Function."; - mandatory true; - type types3gpp:NfType; - } - - leaf heartBeatTimer { - description "Time in seconds expected between 2 consecutive - heart-beat messages from an NF Instance to the NRF. - It may be included in the registration request. - When present in the request it shall contain the - heartbeat time proposed by the NF service consumer."; - type uint16; - } - - leaf hostAddr { - mandatory true; - type inet:host ; - description "Host address of a NF"; - } - - leaf authzInfo { - description "This parameter defines NF Specific Service authorization - information. It shall include the NF type (s) and NF realms/origins - allowed to consume NF Service(s) of NF Service Producer "; - reference "TS 23.501"; - type string; - } - - list allowedPlmns { - description "PLMNs allowed to access the NF instance. - If not provided, any PLMN is allowed to access the NF."; - min-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list sNPNList { - key "mcc mnc nId"; - description "SNPN(s) of the Network Function. This attributeIE shall be - present if the NF pertains to one or more SNPNs."; - reference "TS 29.510"; - uses SPNInfoIdGrp; - } - - list allowedSNPNs { - description "SNPNs allowed to access the NF instance. - The absence of this attribute in the NF profile indicates that no SNPN, - other than the SNPN(s) registered in the snpnList attribute of the - NF Profile, is allowed to access the service instance"; - key "mCC mNC"; - uses types3gpp:SNPNIdGrp; - } - - leaf-list allowedNfTypes { - description "Type of the NFs allowed to access the NF instance. - If not provided, any NF type is allowed to access the NF."; - min-elements 1; - type types3gpp:NfType; - } - - leaf-list allowedNfDomains { - description "Pattern (regular expression according to the ECMA-262 - dialect [75]) representing the NF domain names within the PLMN of - the NRF allowed to access the NF instance If not provided, - any NF domain is allowed to access the NF."; - type string; - } - - list allowedNSSAIs { - description "S-NSSAI of the allowed slices to access the NF instance. - If not provided, any slice is allowed to access the NF."; - key "sst sd"; - uses types3gpp:SNssai; - } - - leaf locality { - description "Operator defined information about the location - of the NF instance (e.g. geographic location, data center)."; - type string; - } - - leaf capacity { - description "Static capacity information in the range of 0-65535, - expressed as a weight relative to other NF instances of - the same type; if capacity is also present in the nfServiceList - parameters, those will have precedence over this value."; - type uint16; - } - - leaf-list recoveryTime { - description "Timestamp when the NF was (re)started. The NRF shall notify - NFs subscribed to receiving notifications of changes of the NF profile, - if the NF recoveryTime is changed"; - type yang:date-and-time; - } - leaf nfServicePersistence { - description "This parameter indicates whether the different service - instances of a same NF Service in the NF instance, supporting a same - API version, are capable to persist their resource state in shared - storage and therefore these resources are available after a new NF - service instance supporting the same API version is selected by a NF - Service Consumer "; - reference "TS 29.510"; - type boolean; - } - leaf-list nfSetIdList { - type string ; - min-elements 1; - description "A NF Set Identifier is a globally unique identifier of - a set of equivalent and interchangeable CP NFs from a given network - that provide distribution, redundancy and scalability - (see clause 5.21.3 of 3GPP TS 23.501 [2]).An NF Set Identifier shall - be constructed from the MCC, MNC, NID (for SNPN), NF type and a Set ID. - A NF Set Identifier shall be formatted as the following string: - set.set.5gc.mnc.mcc for a NF Set in a PLMN, or - set.set.5gc.nid.mnc.mcc for a NF Set - in a SNPN.At most one NF Set ID shall be indicated per PLMN-ID or SNPN - of the NF."; - } - leaf-list nfProfileChangesSupportInd { - description "This parameter indicates if the NF Service Consumer supports - or does not support receiving NF Profile Changes. It may be present in - the NFRegister or NFUpdate (NF Profile Complete Replacement) request and - shall be absent in the response (see Annex B 3GPP TS 29.510 [23]). "; - max-elements 1; - type boolean; - } - leaf-list nfProfilePartialUpdateChangesSupportInd { - description "It represents NF Profile Partial Update Changes Support - Indicator. TRUE: the NF Service Consumer supports receiving NF Profile - Changes in the response to an NF Profile Partial Update operation. - FALSE (default): the NF Service Consumer does not support receiving - NF Profile Changes in the response to an NF Profile Partial Update - operation"; - max-elements 1; - type boolean; - } - - list defaultNotificationSubscriptions { - description "Notification endpoints for different notification types. - This attribute may contain multiple default subscriptions for a same - notification type; in that case, those default subscriptions are used - as alternative notification endpoints."; - key notificationType; - min-elements 1; - uses types3gpp:DefaultNotificationSubscription; - } - leaf servingScope { - description "This parameter indicates the served geographical areas - of a NF instance."; - type string; - } - leaf-list lcHSupportInd { - description "This parameter indicates whether the NF supports or does - not support Load Control based on LCI Header."; - reference "clause 6.3 of 3gpp TS 29.500"; - max-elements 1; - type boolean; - } - leaf-list olcHSupportInd { - description "This parameter indicates whether the NF supports or does - not support Overload Control based on OCI Header ."; - reference "clause 6.4 of 3gpp TS 29.500"; - max-elements 1; - type boolean; - } - leaf-list nfSetRecoveryTimeList { - description "This parameter contains the recovery time of NF Set(s) - indicated by the NfSetId, where the NF instance belongs."; - type yang:date-and-time ; - max-elements 1; - } - leaf-list serviceSetRecoveryTimeList { - description "This parameter contains the recovery time of NF Service - Set(s) configured in the NF instance, which are indicated by the - NfServiceSetId"; - type yang:date-and-time ; - max-elements 1; - } - leaf scpDomains { - description "This parameter shall carry the list of SCP domains the - SCP belongs to, or the SCP domain the NF (other than SCP) or the SEPP - belongs to.."; - type string; - } - leaf vendorId { - description "Vendor ID of the NF instance, according to the - IANA-assigned SMI Network Management Private Enterprise Codes [77]. - allowedValues: 6 decimal digits; if the SMI code has less than - 6 digits, it shall be padded with leading digits 0 to complete - a 6-digit string value."; - type string; - } - - leaf-list interPlmnFqdn { - description "If the NF needs to be discoverable by other - NFs in a different PLMN, then an FQDN that is used - for inter-PLMN routing is specified."; - type inet:domain-name; - } - -} -} - +module _3gpp-5gc-nrm-managed-nfprofile { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-managed-nfprofile; + prefix mnfp3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import ietf-inet-types { prefix inet; } + import ietf-yang-types { prefix yang; } + import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } + +organization "3gpp SA5"; +contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; +description "NF profile class. +Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, +TTA, TTC). All rights reserved."; + reference "3GPP TS 29.510"; + + revision 2025-11-06 { reference CR-1639 ; } + revision 2025-11-06 { reference "initial revision"; } + + grouping SPNInfoIdGrp { + description "This data type represents the SNPN identification + consisting of MCC, MNC, and optionally NID."; + leaf mcc { + type string; + description "Mobile Country Code (MCC) of the SNPN."; + } + + leaf mnc { + type string; + description "Mobile Network Code (MNC) of the SNPN."; + } + + leaf nId { + type string; + description "Network Identifier (NID) of the SNPN."; + } + } + + grouping SupiRangeGrp { + leaf start { + description "First value identifying the start ofa SUPI range.To be + used when the range of SUPI's can be represented as a numeric range + (e.g., IMSI ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf end { + description "Last value identifying the end of a SUPI range.To be + used when the range of SUPI's can be represented as a numeric range + (e.g. IMSI ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf pattern { + description "Pattern representing the set of SUPI's belonging to + this range.A SUPI value is considered part of the range if and + only if the SUPI string fully matches the regular expression."; + type string; + } + } + + grouping ConditionItemGrp { + description "This data type represents a single condition item that + shall be evaluated to determine whether a discovered NF (Service) + Instance shall be selected."; + + leaf consumerNfTypes { + description "It represents the NF types of the consumers for + which the conditions included in this ConditionItem apply. + If this attribute is absent, the conditions are applicable + to all NF consumer types."; + type types3gpp:NfType; + } + leaf serviceFeature { + description "It represents a feature number of that NF Service + Instance,under CANARY_RELEASE status. This attribute only + applies when the selectionConditions, where this + ConditionItem is included, is included in a NF Service Instance + This condition is evaluated to when the service requests + froma consumer of this NF Service Instance require the support + of the indicated feature on the NF Service Instance."; + type uint32; // positive integer, 0 excluded by context + } + leaf vsServiceFeature { + description "It represents a Vendor-Specific feature + number of thatNF Service Instance, under CANARY_RELEASE + status. This attribute only applies when the + selectionConditions, where this ConditionItem is included, + is included in a NF Service Instance.This condition is + evaluated to true when the service requests from a + consumer of this NF Service Instance require the support + of the indicated Vendor-Specific feature on the NF + Service Instance."; + type uint32; + } + list supiRangeList { + description "It represents a set of SUPIs for which + the NF (Service) instance under CANARY_RELEASE status shall + be selected."; + key idx; + leaf idx { type uint32; } + uses SupiRangeGrp; + } + list gpsiRangeList { + description "It represents a set of GPSIs for which the NF + (Service) + instance under CANARY_RELEASE status shall be selected"; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses IdentityRange; + } + list impuRangeList { + description "It represents a set of IMS Public Identities + for which the NF (Service) instance under CANARY_RELEASE + status shall be selected"; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses IdentityRange; + } + list impiRangeList { + description "It represents a set of IMS Private Identities + for which theNF (Service) instance under + CANARY_RELEASE status shall be selected."; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses IdentityRange; + } + leaf peiList { + description "It represents a set of PEIs of the UEs for + which the NF(Service) instance under CANARY_RELEASE status + shall be selected"; + type string; + } + list taiRangeList { + description "It represents a set of TAIs where the + NF(Service) instance under CANARY_RELEASE status shall + be selected for a certain UE"; + min-elements 1; + key idx; + leaf idx { type uint32; } + uses nfp3gpp:TaiRangeGrp; + } + leaf dnnList { + description " It represents a set of TAIs where the NF + (Service) instance under CANARY_RELEASE status shall be + selected for a certain UE"; + type string; + } + } + grouping PlmnSnssai { + list plmnId { + description "PLMN ID for which list of supported S-NSSAI(s) + is provided."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + list sNssaiList { + description "The specific list of S-NSSAIs supported + by the given PLMN."; + min-elements 1; + max-elements 1; + key "sst sd"; + uses types3gpp:SNssai; + } + leaf nid { + description "Network Identity; Shall be present if PlmnIdNid + identifies an SNPN "; + reference "see clauses 5.30.2.3, 5.30.2.9, 6.3.4, + and 6.3.8 in 3GPP TS 23.501 "; + type string; + } + } + + grouping IdentityRange { + leaf start { + description "First value identifying the start of an identity range. + To be used when the range of identities can be represented + as a numeric range (e.g., MSISDN ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + leaf end {type string; } // dummy + leaf pattern {type string; } // dummy + } + +grouping ManagedNFProfileGrp { + + leaf nfInstanceId { + description "String uniquely identifying a NF instance."; + mandatory true; + type string; + } + + leaf nfType { + description "Type of Network Function."; + mandatory true; + type types3gpp:NfType; + } + + leaf heartBeatTimer { + description "Time in seconds expected between 2 consecutive + heart-beat messages from an NF Instance to the NRF. + It may be included in the registration request. + When present in the request it shall contain the + heartbeat time proposed by the NF service consumer."; + type uint16; + } + + leaf hostAddr { + mandatory true; + type inet:host ; + description "Host address of a NF"; + } + + leaf authzInfo { + description "This parameter defines NF Specific Service authorization + information. It shall include the NF type (s) and NF realms/origins + allowed to consume NF Service(s) of NF Service Producer "; + reference "TS 23.501"; + type string; + } + + list allowedPlmns { + description "PLMNs allowed to access the NF instance. + If not provided, any PLMN is allowed to access the NF."; + min-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list sNPNList { + key "mcc mnc nId"; + description "SNPN(s) of the Network Function. This attributeIE shall be + present if the NF pertains to one or more SNPNs."; + reference "TS 29.510"; + uses SPNInfoIdGrp; + } + + list allowedSNPNs { + description "SNPNs allowed to access the NF instance. + The absence of this attribute in the NF profile indicates that no SNPN, + other than the SNPN(s) registered in the snpnList attribute of the + NF Profile, is allowed to access the service instance"; + key "mCC mNC"; + uses types3gpp:SNPNIdGrp; + } + + leaf-list allowedNfTypes { + description "Type of the NFs allowed to access the NF instance. + If not provided, any NF type is allowed to access the NF."; + min-elements 1; + type types3gpp:NfType; + } + + leaf-list allowedNfDomains { + description "Pattern (regular expression according to the ECMA-262 + dialect [75]) representing the NF domain names within the PLMN of + the NRF allowed to access the NF instance If not provided, + any NF domain is allowed to access the NF."; + type string; + } + + list allowedNSSAIs { + description "S-NSSAI of the allowed slices to access the NF instance. + If not provided, any slice is allowed to access the NF."; + key "sst sd"; + uses types3gpp:SNssai; + } + + leaf locality { + description "Operator defined information about the location + of the NF instance (e.g. geographic location, data center)."; + type string; + } + + leaf capacity { + description "Static capacity information in the range of 0-65535, + expressed as a weight relative to other NF instances of + the same type; if capacity is also present in the nfServiceList + parameters, those will have precedence over this value."; + type uint16; + } + + leaf-list recoveryTime { + description "Timestamp when the NF was (re)started. The NRF shall notify + NFs subscribed to receiving notifications of changes of the NF profile, + if the NF recoveryTime is changed"; + type yang:date-and-time; + } + leaf nfServicePersistence { + description "This parameter indicates whether the different service + instances of a same NF Service in the NF instance, supporting a same + API version, are capable to persist their resource state in shared + storage and therefore these resources are available after a new NF + service instance supporting the same API version is selected by a NF + Service Consumer "; + reference "TS 29.510"; + type boolean; + } + leaf-list nfSetIdList { + type string ; + min-elements 1; + description "A NF Set Identifier is a globally unique identifier of + a set of equivalent and interchangeable CP NFs from a given network + that provide distribution, redundancy and scalability + (see clause 5.21.3 of 3GPP TS 23.501 [2]).An NF Set Identifier shall + be constructed from the MCC, MNC, NID (for SNPN), NF type and a Set ID. + A NF Set Identifier shall be formatted as the following string: + set.set.5gc.mnc.mcc for a NF Set in a PLMN, or + set.set.5gc.nid.mnc.mcc for a NF Set + in a SNPN.At most one NF Set ID shall be indicated per PLMN-ID or SNPN + of the NF."; + } + leaf-list nfProfileChangesSupportInd { + description "This parameter indicates if the NF Service Consumer supports + or does not support receiving NF Profile Changes. It may be present in + the NFRegister or NFUpdate (NF Profile Complete Replacement) request and + shall be absent in the response (see Annex B 3GPP TS 29.510 [23]). "; + max-elements 1; + type boolean; + } + leaf-list nfProfilePartialUpdateChangesSupportInd { + description "It represents NF Profile Partial Update Changes Support + Indicator. TRUE: the NF Service Consumer supports receiving NF Profile + Changes in the response to an NF Profile Partial Update operation. + FALSE (default): the NF Service Consumer does not support receiving + NF Profile Changes in the response to an NF Profile Partial Update + operation"; + max-elements 1; + type boolean; + } + + list defaultNotificationSubscriptions { + description "Notification endpoints for different notification types. + This attribute may contain multiple default subscriptions for a same + notification type; in that case, those default subscriptions are used + as alternative notification endpoints."; + key notificationType; + min-elements 1; + uses types3gpp:DefaultNotificationSubscription; + } + leaf servingScope { + description "This parameter indicates the served geographical areas + of a NF instance."; + type string; + } + leaf-list lcHSupportInd { + description "This parameter indicates whether the NF supports or does + not support Load Control based on LCI Header."; + reference "clause 6.3 of 3gpp TS 29.500"; + max-elements 1; + type boolean; + } + leaf-list olcHSupportInd { + description "This parameter indicates whether the NF supports or does + not support Overload Control based on OCI Header ."; + reference "clause 6.4 of 3gpp TS 29.500"; + max-elements 1; + type boolean; + } + leaf-list nfSetRecoveryTimeList { + description "This parameter contains the recovery time of NF Set(s) + indicated by the NfSetId, where the NF instance belongs."; + type yang:date-and-time ; + max-elements 1; + } + leaf-list serviceSetRecoveryTimeList { + description "This parameter contains the recovery time of NF Service + Set(s) configured in the NF instance, which are indicated by the + NfServiceSetId"; + type yang:date-and-time ; + max-elements 1; + } + leaf scpDomains { + description "This parameter shall carry the list of SCP domains the + SCP belongs to, or the SCP domain the NF (other than SCP) or the SEPP + belongs to.."; + type string; + } + leaf vendorId { + description "Vendor ID of the NF instance, according to the + IANA-assigned SMI Network Management Private Enterprise Codes [77]. + allowedValues: 6 decimal digits; if the SMI code has less than + 6 digits, it shall be padded with leading digits 0 to complete + a 6-digit string value."; + type string; + } + + leaf-list interPlmnFqdn { + description "If the NF needs to be discoverable by other + NFs in a different PLMN, then an FQDN that is used + for inter-PLMN routing is specified."; + type inet:domain-name; + } + +} +} + -- GitLab