From f6e4592cb50a465df44cfab750f2ca4d03e2dfe6 Mon Sep 17 00:00:00 2001 From: rosabolzek Date: Fri, 31 Jan 2025 14:26:19 +0100 Subject: [PATCH 01/14] yang implementation CR1442 --- .../_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang | 5 +- yang-models/_3gpp-5gc-nrm-neffunction.yang | 5 +- yang-models/_3gpp-5gc-nrm-nfprofile.yang | 41 +++---- yang-models/_3gpp-5gc-nrm-nfservice.yang | 109 +++++++++++++----- yang-models/_3gpp-5gc-nrm-nrffunction.yang | 5 +- yang-models/_3gpp-common-yang-types.yang | 98 +++++++++++++++- .../_3gpp-nr-nrm-eutranfreqrelation.yang | 5 +- yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang | 13 ++- yang-models/_3gpp-nr-nrm-nrcelldu.yang | 46 +------- yang-models/_3gpp-nr-nrm-nrfreqrelation.yang | 5 +- yang-models/_3gpp-nr-nrm-nrfrequency.yang | 5 +- .../_3gpp-ns-nrm-networkslicesubnet.yang | 39 +++++-- yang-models/_3gpp-ns-nrm-sliceprofile.yang | 54 +-------- 13 files changed, 260 insertions(+), 170 deletions(-) diff --git a/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang b/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang index 10e0ee414..82d33842e 100755 --- a/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang +++ b/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang @@ -11,10 +11,11 @@ module _3gpp-5gc-nrm-FiveQiDscpMappingSet { organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description " This IOC represents the set of mapping between 5QIs and DSCP. - 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-01-25 { reference CR-1442 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2020-08-03 { reference "CR-0321"; } revision 2020-05-27 { reference "CR-0287"; } @@ -38,7 +39,7 @@ module _3gpp-5gc-nrm-FiveQiDscpMappingSet { grouping FiveQiDscpMappingSetGrp { description "Represents the FiveQiDscpMappingSet IOC."; - list FiveQiDscpMappingList { + list fiveQiDscpMappingList { key "dscp"; uses FiveQiDscpMapping; } diff --git a/yang-models/_3gpp-5gc-nrm-neffunction.yang b/yang-models/_3gpp-5gc-nrm-neffunction.yang index fec93a992..1c48c30c8 100755 --- a/yang-models/_3gpp-5gc-nrm-neffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-neffunction.yang @@ -17,10 +17,11 @@ module _3gpp-5gc-nrm-neffunction { contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the NEF function in 5GC. For more information about the NEF, 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-01-25 { reference CR-1442 ; } revision 2024-05-18 { reference CR-1273 ; } revision 2024-04-12 { reference CR-1218 ; } revision 2023-09-18 { reference CR-1103 ; } @@ -156,7 +157,7 @@ module _3gpp-5gc-nrm-neffunction { uses types3gpp:TaiGrp; } - list taiRangelist { + list taiRangeList { config false; description "Range of TAIs"; yext3gpp:inVariant; diff --git a/yang-models/_3gpp-5gc-nrm-nfprofile.yang b/yang-models/_3gpp-5gc-nrm-nfprofile.yang index 15dc5e0a1..35ed626ff 100755 --- a/yang-models/_3gpp-5gc-nrm-nfprofile.yang +++ b/yang-models/_3gpp-5gc-nrm-nfprofile.yang @@ -12,10 +12,11 @@ module _3gpp-5gc-nrm-nfprofile { organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "NF profile class. - 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 29.510"; + revision 2025-01-25 { reference CR-1442 ; } revision 2024-04-12 { reference CR-1218 ; } revision 2023-11-18 { reference CR-1103 ; } revision 2023-09-18 { reference CR-1043 ; } @@ -23,7 +24,7 @@ module _3gpp-5gc-nrm-nfprofile { revision 2019-06-17 { reference "initial revision"; } grouping NFProfileGrp { - leaf nfInstanceID { + leaf nfInstanceId { description "String uniquely identifying a NF instance."; mandatory true; type string; @@ -588,8 +589,8 @@ module _3gpp-5gc-nrm-nfprofile { locally configured in the NRF or the NRF received during NF registration."; - key nfInstanceID; - leaf nfInstanceID { + key nfInstanceId; + leaf nfInstanceId { description "String uniquely identifying a NF instance."; type string; } @@ -604,8 +605,8 @@ module _3gpp-5gc-nrm-nfprofile { locally configured in the NRF or the NRF received during NF registration."; - key nfInstanceID; - leaf nfInstanceID { + key nfInstanceId; + leaf nfInstanceId { description "String uniquely identifying a NF instance."; type string; } @@ -620,8 +621,8 @@ module _3gpp-5gc-nrm-nfprofile { locally configured in the NRF or the NRF received during NF registration."; - key nfInstanceID; - leaf nfInstanceID { + key nfInstanceId; + leaf nfInstanceId { description "String uniquely identifying a NF instance."; type string; } @@ -636,8 +637,8 @@ module _3gpp-5gc-nrm-nfprofile { locally configured in the NRF or the NRF received during NF registration."; - key nfInstanceID; - leaf nfInstanceID { + key nfInstanceId; + leaf nfInstanceId { description "String uniquely identifying a NF instance."; type string; } @@ -652,8 +653,8 @@ module _3gpp-5gc-nrm-nfprofile { locally configured in the NRF or the NRF received during NF registration."; - key nfInstanceID; - leaf nfInstanceID { + key nfInstanceId; + leaf nfInstanceId { description "String uniquely identifying a NF instance."; type string; } @@ -668,8 +669,8 @@ module _3gpp-5gc-nrm-nfprofile { locally configured in the NRF or the NRF received during NF registration."; - key nfInstanceID; - leaf nfInstanceID { + key nfInstanceId; + leaf nfInstanceId { description "String uniquely identifying a NF instance."; type string; } @@ -684,8 +685,8 @@ module _3gpp-5gc-nrm-nfprofile { locally configured in the NRF or the NRF received during NF registration."; - key nfInstanceID; - leaf nfInstanceID { + key nfInstanceId; + leaf nfInstanceId { description "String uniquely identifying a NF instance."; type string; } @@ -700,8 +701,8 @@ module _3gpp-5gc-nrm-nfprofile { locally configured in the NRF or the NRF received during NF registration."; - key nfInstanceID; - leaf nfInstanceID { + key nfInstanceId; + leaf nfInstanceId{ description "String uniquely identifying a NF instance."; type string; } @@ -716,8 +717,8 @@ module _3gpp-5gc-nrm-nfprofile { locally configured in the NRF or the NRF received during NF registration."; - key nfInstanceID; - leaf nfInstanceID { + key nfInstanceId; + leaf nfInstanceId { description "String uniquely identifying a NF instance."; type string; } diff --git a/yang-models/_3gpp-5gc-nrm-nfservice.yang b/yang-models/_3gpp-5gc-nrm-nfservice.yang index 82cf61e87..d3d3a71cd 100755 --- a/yang-models/_3gpp-5gc-nrm-nfservice.yang +++ b/yang-models/_3gpp-5gc-nrm-nfservice.yang @@ -12,10 +12,11 @@ module _3gpp-5gc-nrm-nfservice { organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "NF service class. - 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 29.510"; + revision 2025-01-25 { reference CR-1442; } revision 2023-09-18 { reference CR-1043 ; } revision 2021-01-25 { reference CR-0454 ; } revision 2020-11-05 { reference CR-0412 ; } @@ -98,7 +99,7 @@ module _3gpp-5gc-nrm-nfservice { uses types3gpp:DefaultNotificationSubscription; } - list allowedPlmns { + list allowedPLMNs { description "PLMNs allowed to access the service instance. The absence of this attribute indicates that any PLMN is allowed to access the service instance."; @@ -108,15 +109,21 @@ module _3gpp-5gc-nrm-nfservice { key "mcc mnc"; uses types3gpp:PLMNId; } - - leaf-list allowedNfTypes { - description "Type of the NFs allowed to access the service instance. - The absence of this attribute indicates that any NF type is allowed - to access the service instance."; + list allowedSnpns { + description "PLMNs allowed to access the service instance. + The absence of this attribute indicates that any PLMN is allowed to + access the service instance."; min-elements 1; //optional support - type types3gpp:NfType; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + leaf-list allowedNfTypes { + description "SNPNs allowed to access the NF instance"; + min-elements 1; + //optional support + type types3gpp:NfType; } leaf-list allowedNfDomains { @@ -126,7 +133,7 @@ module _3gpp-5gc-nrm-nfservice { type string; } - list allowedNssais { + list allowedNSSAI { description "S-NSSAI of the allowed slices to access the service instance. The absence of this attribute indicates that any slice is allowed to access the service instance."; @@ -135,13 +142,51 @@ module _3gpp-5gc-nrm-nfservice { key "sd sst"; uses types5g3gpp:SNssai; } - + leaf-list allowedOperationsPerNfType { + description "It indicates the allowed operations on resources for each type + of NF; the key of the map is the NF Type, and the value is an array of scopes"; + //optional support + type string; + min-elements 1; + } + leaf-list allowedOperationsPerNfInstance { + description "It indicates the allowed operations on resources for a given NF + Instance; the key of the map is the NF Instance Id, and the value is an array of scopes"; + //optional support + type string; + min-elements 1; + } + leaf allowedOperationsPerNfInstanceOverrides { + type boolean; + default false; + description "When it is present and set to true, indicates that the scopes defined in + attribute allowedOperationsPerNfInstance for a given NF Instance ID take precedence over + the scopes defined in attribute allowedOperationsPerNfType for the corresponding NF type + of the NF Instance associated to such NF Instance ID.."; + } + + leaf-list oauth2Required { + type boolean; + max-elements 1; + description "It indicates whether the NF Service Instance requires Oauth2-based authorization"; + } + + leaf-list sharedServiceDataId { + type string; + max-elements 1; + description "String uniquely identifying SharedServiceData. The format of the + sharedServiceDataId shall be a Universally Unique Identifier (UUID) version 4, + as described in IETF RFC 4122 [44]. The hexadecimal letters should be formatted + as lower-case characters by the sender, and they shall be handled as case-insensitive + by the receiver."; + } + leaf priority { description "Priority (relative to other services of the same type) in the range of 0-65535, to be used for NF Service selection; lower values indicate a higher priority."; //optional support - type uint16; + type uint16 { range "0..65535"; } } leaf capacity { @@ -151,31 +196,17 @@ module _3gpp-5gc-nrm-nfservice { type uint16; } - leaf load { - description "Dynamic load information, ranged from 0 to 100, indicates - the current load percentage of the NF Service."; - //optional support - type types3gpp:Load; - } - + leaf recoveryTime { description "Timestamp when the NF was (re)started."; //optional support type yang:date-and-time; } - - list chfServiceInfo { //is the key unique - description "Specific data for a CHF service instance."; - //optional support - max-elements 1; - key "primaryChfServiceInstance secondaryChfServiceInstance"; - uses ChfServiceInfo; - } - - leaf supportedFeatures { - description "Supported Features of the NF Service instance."; + + leaf vendorId { + description "Vendor ID of the NF instance"; //optional support - type SupportedFeatures; + type string; } } @@ -302,4 +333,22 @@ module _3gpp-5gc-nrm-nfservice { type string; } } + grouping SNPNIdGrp { + description "This <> represents the information of a SNPN + identification"; + leaf mCC { + description "This is the Mobile Country Code (MCC) of the PLMN + identifier. See TS 23.003 [13] subclause 2.2 and 12.1"; + type string; + } + leaf mNC { + description "This is the Mobile Network Code (MNC) of the PLMN identifier. + See TS 23.003 [13] subclause 2.2 and 12.1."; + type string; + } + leaf nId { + description "Network Identity; Shall be present if PlmnIdNid identifies an SNPN"; + type string; + } + } } \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nrffunction.yang b/yang-models/_3gpp-5gc-nrm-nrffunction.yang index 25507c96a..e8a8ff3bc 100755 --- a/yang-models/_3gpp-5gc-nrm-nrffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-nrffunction.yang @@ -16,10 +16,11 @@ module _3gpp-5gc-nrm-nrffunction { contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the NRF function in 5GC. For more information about the NRF, see 3GPP TS 23.501 [2]. - 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-01-25 { reference CR-1442 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2023-04-26 { reference CR-0916; } revision 2020-11-08 { reference CR-0412 ; } @@ -72,7 +73,7 @@ module _3gpp-5gc-nrm-nrffunction { list nFProfileList { description "Set of NFProfile(s) to be registered in the NRF instance."; //optional support - key nfInstanceID; + key nfInstanceId; uses nfp3gpp:NFProfileGrp; } } diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 37fadf04a..0195a23c3 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -12,10 +12,12 @@ module _3gpp-common-yang-types { description "The model defines a YANG mapping of the top level information classes used for management of 5G networks and network slicing. - 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.623"; + revision 2024-11-25 { reference CR-1442; } + revision 2024-11-25 { reference CR-1412; } revision 2024-11-01 { reference CR-0463; } revision 2024-08-13 { reference CR-0387; } revision 2024-05-18 { reference CR-0359; } @@ -299,6 +301,44 @@ module _3gpp-common-yang-types { yext3gpp:notNotifyable; } } + grouping NPNIdGrp { + description "Represents the NPN supported by the <> using this + <> as one of its attributes in case of the cell is a + NPN-only cell."; + + list plmnid { + key "mcc mnc"; + min-elements 1; + description "PLMNId"; + uses types3gpp:PLMNId; + } + + leaf cAGIdList { + type string; + mandatory true; + description "It identifies a CAG list containing up to 12 CAG-identifiers + per PLMN Identity, see TS 38.331. + + CAG is used for the PNI-NPNs to prevent UE(s), which are not allowed + to access the NPN via the associated cell(s), from automatically + selecting and accessing the associated CAG cell(s). + + CAG ID is used to combine with PLMN ID to identify a PNI-NPN. + + Exist if the cell is a NPN-only cell see TS 38.331"; + } + + leaf nIDList { + type string; + mandatory true; + description "It identifies a list of NIDs containing up to 12 NIDs per + PLMN Identity, see TS 38.331. + + NID is used to combine with PLMN ID to identify an SNPN. + + Exist if the cell is a NPN-only cell see TS 38.331"; + } + } typedef TenthOfDegrees { type uint16 { @@ -369,7 +409,7 @@ module _3gpp-common-yang-types { leaf idx { type uint32 ; } - leaf nfInstanceID { + leaf nfInstanceId { config false; mandatory true; type yang:uuid ; @@ -829,6 +869,11 @@ module _3gpp-common-yang-types { type inet:uri; } + leaf interPlmnCallbackUri { + description "It indicates the callback URI to be used by NF Service + Producers located in PLMNs that are different from the PLMN of the NF consumer."; + type inet:uri; + } leaf n1MessageClass { type N1MessageClass; } @@ -836,6 +881,55 @@ module _3gpp-common-yang-types { leaf n2InformationClass { type N2InformationClass; } + + leaf versions { + description "This attribute identifies the API versions + (e.g. v1) supported for the default notification type"; + //optional + type N2InformationClass; + } + leaf binding { + description "This attribute shall contain the value of the Binding Indication + for the default subscription notification "; + reference " i.e. the value part of 3gpp-Sbi-Binding header, as specified in + clause 6.12.4 of 3GPP TS 29.500 76. "; + //optional + type string; + config false; + } + leaf acceptedEncoding { + description "It indicates the content encodings that are accepted by a NF Service + Consumer when receiving a notification related to a default notification subscription"; + reference "IETF RFC 9110 clause 12.5.3 "; + //optional + type string; + config false; + } + leaf supportedFeatures { + description "It is a string, which indicates the features of the service corresponding + to the subscribed default notification, which are supported by the NF (Service) instance + acting as NF service consumer. The string shall contain a bitmask indicating supported + features in hexadecimal representation:Each character in the string shall take a value + of 0 to 9, a to f or A to F "; + reference "shall represent the support of 4 features as described in table 5.2.2-3 of TS 29.571 [61]."; + //optional + type string; + config false; + } + leaf serviceInfoList { + description "It indicates a list of service specific information. It may be present + when the notification request of the notification type may be generated by multiple + services, i.e. notifications from different services may be received by the subscription."; + //optional + type string; + config false; + } + leaf callbackUriPrefix { + description "It indicates the optional path segment(s) used to construct the prefix of the + Callback URIs during the reselection of an NF service consumer, as described in 3GPP TS 29.501"; + //optional + type inet:uri; + } } grouping Ipv4AddressRange { diff --git a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang index 0ebea1981..b5479dfd0 100755 --- a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang +++ b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang @@ -13,10 +13,11 @@ module _3gpp-nr-nrm-eutranfreqrelation { organization "3GPP SA5"; description "Defines the YANG mapping of the EUtranFreqRelation Information Object Class (IOC) that is part of the NR Network Resource Model (NRM). - 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-01-25 { reference CR-; } revision 2024-02-24 { reference CR-1218; } revision 2023-09-18 { reference CR-1043; } revision 2019-10-28 { reference S5-193518 ; } @@ -44,7 +45,7 @@ module _3gpp-nr-nrm-eutranfreqrelation { blocklisted in E-UTRAN measurements."; reference "3GPP TS 38.331"; min-elements 0; - type uint16 { range "0..1007"; } + type uint16 { range "0..503"; } } leaf-list blockListEntryIdleMode { diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang index aaf83c7ee..9b0452ac3 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -16,10 +16,11 @@ module _3gpp-nr-nrm-gnbcucpfunction { contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the GNBCUCPFunction Information Object Class (IOC) that is part of the NR Network Resource Model (NRM). - 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-01-25 { reference "CR-1442"; } revision 2024-11-07 { reference "CR-1443"; } revision 2024-08-19 { reference "CR-1405"; } revision 2024-08-19 { reference "CR-1337 CR-1352"; } @@ -87,7 +88,7 @@ module _3gpp-nr-nrm-gnbcucpfunction { description "This data type represents the properties describing the mapping relationship between set ID and backhaul address of gNB."; - leaf setID { + leaf setId { type uint32 { range 0..4194304; // 22 bits } @@ -109,7 +110,7 @@ module _3gpp-nr-nrm-gnbcucpfunction { } } - grouping tceIDMappingInfoGrp { + grouping TceIDMappingInfoGrp { description "This data type represents the properties describing the mapping relationship between TCE ID, PLMN where TCE resides and IP address of TCE."; @@ -236,7 +237,7 @@ module _3gpp-nr-nrm-gnbcucpfunction { min-elements 1; key idx; leaf idx { type uint32; } - uses tceIDMappingInfoGrp; + uses TceIDMappingInfoGrp; } leaf dDAPSHOControl { @@ -311,6 +312,10 @@ module _3gpp-nr-nrm-gnbcucpfunction { NRECMappingRule contained by parent, e.g. ManagedElement or SubNetwork, applies."; } + + leaf mWABRef { + type types3gpp:DistinguishedName; + } } grouping QceIdMappingInfoGrp { diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang index da3e12195..94420e4df 100755 --- a/yang-models/_3gpp-nr-nrm-nrcelldu.yang +++ b/yang-models/_3gpp-nr-nrm-nrcelldu.yang @@ -15,10 +15,11 @@ module _3gpp-nr-nrm-nrcelldu { contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the NRCellDU Information Object Class (IOC) that is part of the NR Network Resource Model (NRM). - 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 2024-05-25 { reference CR-1412 ; } revision 2024-05-24 { reference CR-1273 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2022-07-28 { reference "CR-0770"; } @@ -42,46 +43,7 @@ module _3gpp-nr-nrm-nrcelldu { description "Class representing Centralized SON function of PCI configuration feature"; } - - grouping NPNIdentityGrp { - description "Represents the NPN supported by the <> using this - <> as one of its attributes in case of the cell is a - NPN-only cell."; - - list plmnid { - key "mcc mnc"; - min-elements 1; - description "PLMNId"; - uses types3gpp:PLMNId; - } - - leaf cAGIdList { - type string; - mandatory true; - description "It identifies a CAG list containing up to 12 CAG-identifiers - per PLMN Identity, see TS 38.331. - - CAG is used for the PNI-NPNs to prevent UE(s), which are not allowed - to access the NPN via the associated cell(s), from automatically - selecting and accessing the associated CAG cell(s). - - CAG ID is used to combine with PLMN ID to identify a PNI-NPN. - - Exist if the cell is a NPN-only cell see TS 38.331"; - } - - leaf nIDList { - type string; - mandatory true; - description "It identifies a list of NIDs containing up to 12 NIDs per - PLMN Identity, see TS 38.331. - - NID is used to combine with PLMN ID to identify an SNPN. - - Exist if the cell is a NPN-only cell see TS 38.331"; - } - } - + grouping NRCellDUGrp { description "Represents the NRCellDU IOC."; reference "3GPP TS 28.541"; @@ -143,7 +105,7 @@ module _3gpp-nr-nrm-nrcelldu { corresponding PNI-NPN or SNPN in case of the cell is NPN-only cell."; reference "3GPP TS 38.331"; leaf idx { type uint32 ; } - uses NPNIdentityGrp; + uses types3gpp:NPNIdGrp; } leaf nRPCI { diff --git a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang index 90705d9b9..46b942353 100755 --- a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang +++ b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang @@ -12,10 +12,11 @@ module _3gpp-nr-nrm-nrfreqrelation { organization "3GPP SA5"; description "Defines the YANG mapping of the NRFreqRelation Information Object Class (IOC) that is part of the NR Network Resource Model (NRM). - 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-01-25 { reference CR-; } revision 2024-02-24 { reference CR-1218; } revision 2023-09-18 { reference CR-1043; } revision 2023-04-26 { reference CR-0916; } @@ -81,7 +82,7 @@ module _3gpp-nr-nrm-nrfreqrelation { blocklisted in NR measurements."; reference "3GPP TS 38.331"; min-elements 0; - type uint16 { range "0..1007"; } + type uint16 { range "0..503"; } } leaf-list blockListEntryIdleMode { diff --git a/yang-models/_3gpp-nr-nrm-nrfrequency.yang b/yang-models/_3gpp-nr-nrm-nrfrequency.yang index a1589ef2b..1ae6f94fc 100755 --- a/yang-models/_3gpp-nr-nrm-nrfrequency.yang +++ b/yang-models/_3gpp-nr-nrm-nrfrequency.yang @@ -11,10 +11,11 @@ module _3gpp-nr-nrm-nrfrequency { organization "3GPP SA5"; description "Defines the YANG mapping of the NRFrequency Information Object Class (IOC) that is part of the NR Network Resource Model (NRM). - 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 5G Network Resource Model (NRM)"; + revision 2025-01-25 { reference CR-1442 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2019-10-28 { reference S5-193518 ; } revision 2019-06-17 { @@ -33,7 +34,7 @@ module _3gpp-nr-nrm-nrfrequency { type uint32 { range "0.. 3279165"; } } - leaf sSBSubCarrierSpacing { + leaf ssBSubCarrierSpacing { description "Sub-carrier spacing of the SSB."; mandatory true; type uint8 { range "15 | 30 | 60 | 120"; } diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang index 3453e5166..7aba7f7e6 100755 --- a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang +++ b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang @@ -15,7 +15,7 @@ module _3gpp-ns-nrm-networkslicesubnet { "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "This IOC represents the properties of a network slice subnet instance in a 5G network. - 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 Management and orchestration; @@ -23,6 +23,7 @@ module _3gpp-ns-nrm-networkslicesubnet { Information model definitions for network slice NRM (chapter 6) "; + revision 2025-01-25 { reference CR-1412 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2022-07-26 { reference CR-0770 ; } revision 2021-05-05 { @@ -45,7 +46,27 @@ module _3gpp-ns-nrm-networkslicesubnet { type string; reference "ETSI GS NFV-IFA 013"; } - + grouping ConnectionPointInfoGrp { + description "TThis datatype contains information required to identify a + connection point outside of scope of 3GPP MIB (e.g. transport domain), "; + reference "FC 8345 [89] and YANG Data Models for 'Attachment + Circuits'-as-a-Service (ACaaS) [90]"; + leaf connectionPointId { + description "This parameter specifies the identifier of a TN object"; + type string; + } + leaf connectionPointIdType { + description "This parameter specifies the type of the connection point identifier"; + type enumeration { + enum VLAN; + enum MPLS; + enum SEGMENT; + enum IPV4; + enum IPV6; + enum ATTACHMENT_CIRCUIT; + } + } + } grouping EPTransportGrp { leaf ipAddress { description "This parameter specifies the IP address assigned to a @@ -61,13 +82,6 @@ module _3gpp-ns-nrm-networkslicesubnet { mandatory true; type string; } - leaf-list nextHopInfo { - description "This parameter is used to identify ingress transport - node. Each node can be identified by any of combination of IP - address of next-hop router of transport network, system name, - port name, IP management address of transport nodes."; - type string; - } leaf-list qosProfile { description "This parameter specifies reference to QoS Profile for a logical transport interface. A QoS profile includes a set of @@ -81,8 +95,13 @@ module _3gpp-ns-nrm-networkslicesubnet { min-elements 1; type types3gpp:DistinguishedName; } + list externalEndPointRefList { + description "This parameter is used to identify a list of connection + point info(s)"; + uses ConnectionPointInfoGrp; + } uses top3gpp:Top_Grp; - } + } grouping NsInfoGrp { description "The NsInfo of the NS instance corresponding to the network diff --git a/yang-models/_3gpp-ns-nrm-sliceprofile.yang b/yang-models/_3gpp-ns-nrm-sliceprofile.yang index 8745dd815..6ba9a70cb 100755 --- a/yang-models/_3gpp-ns-nrm-sliceprofile.yang +++ b/yang-models/_3gpp-ns-nrm-sliceprofile.yang @@ -13,7 +13,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Represents the properties of network slice subnet related requirement that should be supported by the network slice subnet instance in a 5G network. - 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 Management and orchestration; @@ -21,6 +21,7 @@ submodule _3gpp-ns-nrm-sliceprofile { Information model definitions for network slice NRM (chapter 6) "; + revision 2025-01-25 { reference CR-1442; } revision 2023-11-04 { reference CR-1129; } revision 2023-09-18 { reference CR-1043 ; } revision 2023-04-26 { reference CR-0916; } @@ -502,6 +503,7 @@ submodule _3gpp-ns-nrm-sliceprofile { list maxNumberofPDUSessions { description "Represents the maximum number of concurrent PDU sessions supported by the network slice"; + //optional config false; key idx; max-elements 1; @@ -621,54 +623,6 @@ submodule _3gpp-ns-nrm-sliceprofile { } } - grouping PositioningRANSubnetGrp { - description "Represents positioning support in RAN domain"; - leaf-list availability { - type enumeration { - enum CIDE_CID ; - enum OTDOA; - enum RF_FINGERPRINTING; - enum AECID; - enum HYBRID_POSITIONING; - enum NET_RTK; - } - config false; - description "Specifies if this attribute is provided by the RAN domain - of the network slice and contains a list of positioning methods - provided by the RAN domain. If the list is empty this attribute is - not available in the RAN domain and the other parameters might be - ignored, see NG.116. Values allowed: are - CIDE-CID (LTE and NR), OTDOA (LTE and NR), RF fingerprinting, AECID, - Hybrid positioning, NET-RTK."; - } - leaf predictionfrequency { - type enumeration { - enum PERSEC; - enum PERMIN; - enum PERHOUR; - } - mandatory true; - description "Specifies how often location information is provided. - This parameter simply defines how often the customer is allowed to - request location information. This is not related to the time it - takes to determine the location, which is a characteristic of the - positioning method. - If leaf-list availability is empty, the value has no meaning."; - reference "NG.116"; - } - leaf accuracy { - type decimal64 { - fraction-digits 2; - } - units meter; - mandatory true; - description "Specifies the accuracy of the location information. - Accuracy depends on the respective positioning solution applied in the - RAN domain of the network slice."; - reference "NG.116"; - } - } - grouping RANSliceSubnetProfileGrp { description "Represents the RANSliceSubnetProfile datatype"; leaf latency { @@ -936,7 +890,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Specifies whether the RAN domain of the network slice provides geo-localization methods or supporting methods."; reference "Clause 3.4.20 of NG.116 [50]."; - uses PositioningRANSubnetGrp; + uses PositioningGrp; } } -- GitLab From 4eb51a0d69824b08bf8f6fa83086652bf524ae58 Mon Sep 17 00:00:00 2001 From: rosabolzek Date: Tue, 4 Feb 2025 09:31:41 +0100 Subject: [PATCH 02/14] Updated YANG models for compliance and corrections --- .../_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang | 1 + yang-models/_3gpp-5gc-nrm-nfservice.yang | 48 +++++++++-------- yang-models/_3gpp-common-yang-types.yang | 53 +++++++++++-------- .../_3gpp-nr-nrm-eutranfreqrelation.yang | 18 ++++--- yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang | 7 +-- yang-models/_3gpp-nr-nrm-nrfreqrelation.yang | 18 +++---- yang-models/_3gpp-nr-nrm-nrfrequency.yang | 7 +-- .../_3gpp-ns-nrm-networkslicesubnet.yang | 7 +-- 8 files changed, 90 insertions(+), 69 deletions(-) diff --git a/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang b/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang index 82d33842e..0a1adaef4 100755 --- a/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang +++ b/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang @@ -40,6 +40,7 @@ module _3gpp-5gc-nrm-FiveQiDscpMappingSet { grouping FiveQiDscpMappingSetGrp { description "Represents the FiveQiDscpMappingSet IOC."; list fiveQiDscpMappingList { + description "It provides the list of mapping between 5QIs and DSCP."; key "dscp"; uses FiveQiDscpMapping; } diff --git a/yang-models/_3gpp-5gc-nrm-nfservice.yang b/yang-models/_3gpp-5gc-nrm-nfservice.yang index d3d3a71cd..2577809c6 100755 --- a/yang-models/_3gpp-5gc-nrm-nfservice.yang +++ b/yang-models/_3gpp-5gc-nrm-nfservice.yang @@ -127,31 +127,34 @@ module _3gpp-5gc-nrm-nfservice { } leaf-list allowedNfDomains { - description "Pattern representing the NF domain names allowed to access the service instance."; + description "Pattern representing the NF domain names allowed to + access the service instance."; //optional support min-elements 1; type string; } list allowedNSSAI { - description "S-NSSAI of the allowed slices to access the service instance. - The absence of this attribute indicates that any slice is allowed to - access the service instance."; + description "S-NSSAI of the allowed slices to access the service + instance. The absence of this attribute indicates that any slice + is allowed to access the service instance."; min-elements 1; //optional support key "sd sst"; uses types5g3gpp:SNssai; } leaf-list allowedOperationsPerNfType { - description "It indicates the allowed operations on resources for each type - of NF; the key of the map is the NF Type, and the value is an array of scopes"; + description "It indicates the allowed operations on resources for + each type of NF; the key of the map is the NF Type, and the value + is an array of scopes"; //optional support type string; min-elements 1; } leaf-list allowedOperationsPerNfInstance { - description "It indicates the allowed operations on resources for a given NF - Instance; the key of the map is the NF Instance Id, and the value is an array of scopes"; + description "It indicates the allowed operations on resources for + a given NF Instance; the key of the map is the NF Instance Id, and + the value is an array of scopes"; //optional support type string; min-elements 1; @@ -159,26 +162,28 @@ module _3gpp-5gc-nrm-nfservice { leaf allowedOperationsPerNfInstanceOverrides { type boolean; default false; - description "When it is present and set to true, indicates that the scopes defined in - attribute allowedOperationsPerNfInstance for a given NF Instance ID take precedence over - the scopes defined in attribute allowedOperationsPerNfType for the corresponding NF type - of the NF Instance associated to such NF Instance ID.."; + description "When it is present and set to true, indicates that + the scopes defined in attribute allowedOperationsPerNfInstance + for a given NF Instance ID take precedence over the scopes defined + in attribute allowedOperationsPerNfType for the corresponding + NF type of the NF Instance associated to such NF Instance ID.."; } leaf-list oauth2Required { type boolean; max-elements 1; - description "It indicates whether the NF Service Instance requires Oauth2-based authorization"; + description "It indicates whether the NF Service Instance requires + Oauth2-based authorization"; } leaf-list sharedServiceDataId { type string; max-elements 1; - description "String uniquely identifying SharedServiceData. The format of the - sharedServiceDataId shall be a Universally Unique Identifier (UUID) version 4, - as described in IETF RFC 4122 [44]. The hexadecimal letters should be formatted - as lower-case characters by the sender, and they shall be handled as case-insensitive - by the receiver."; + description "String uniquely identifying SharedServiceData. The format + of the sharedServiceDataId shall be a Universally Unique Identifier + (UUID) version 4, as described in IETF RFC 4122 [44]. The hexadecimal + letters should be formatted as lower-case characters by the sender, + and they shall be handled as case-insensitive by the receiver."; } leaf priority { @@ -342,12 +347,13 @@ module _3gpp-5gc-nrm-nfservice { type string; } leaf mNC { - description "This is the Mobile Network Code (MNC) of the PLMN identifier. - See TS 23.003 [13] subclause 2.2 and 12.1."; + description "This is the Mobile Network Code (MNC) of the PLMN + identifier. See TS 23.003 [13] subclause 2.2 and 12.1."; type string; } leaf nId { - description "Network Identity; Shall be present if PlmnIdNid identifies an SNPN"; + description "Network Identity; Shall be present if PlmnIdNid + identifies an SNPN"; type string; } } diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 0195a23c3..de9ff55c9 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -731,9 +731,9 @@ module _3gpp-common-yang-types { grouping GeoAreaGrp { description "This data type defines a geographical area. The geo-area is defined using a convex polygon in the attribute - 'convexGeoPolygon'."; + 'geoPolygon'."; - list convexGeoPolygon { + list geoPolygon { description "Specifies the geographical area with a convex polygon. The convex polygon is specified by its corners."; key "latitude longitude"; @@ -871,7 +871,8 @@ module _3gpp-common-yang-types { leaf interPlmnCallbackUri { description "It indicates the callback URI to be used by NF Service - Producers located in PLMNs that are different from the PLMN of the NF consumer."; + Producers located in PLMNs that are different from the PLMN of + the NF consumer."; type inet:uri; } leaf n1MessageClass { @@ -889,44 +890,50 @@ module _3gpp-common-yang-types { type N2InformationClass; } leaf binding { - description "This attribute shall contain the value of the Binding Indication - for the default subscription notification "; - reference " i.e. the value part of 3gpp-Sbi-Binding header, as specified in + description "This attribute shall contain the value of the Binding + Indication for the default subscription notification "; + reference " i.e. the value part of 3gpp-Sbi-Binding header, as + specified in clause 6.12.4 of 3GPP TS 29.500 76. "; //optional type string; config false; } leaf acceptedEncoding { - description "It indicates the content encodings that are accepted by a NF Service - Consumer when receiving a notification related to a default notification subscription"; + description "It indicates the content encodings that are accepted by a + NF Service Consumer when receiving a notification related to a default + notification subscription"; reference "IETF RFC 9110 clause 12.5.3 "; //optional type string; config false; } leaf supportedFeatures { - description "It is a string, which indicates the features of the service corresponding - to the subscribed default notification, which are supported by the NF (Service) instance - acting as NF service consumer. The string shall contain a bitmask indicating supported - features in hexadecimal representation:Each character in the string shall take a value + description "It is a string, which indicates the features of the service + corresponding to the subscribed default notification, which are supported + by the NF (Service) instance acting as NF service consumer. The string + shall contain a bitmask indicating supported features in hexadecimal + representation:Each character in the string shall take a value of 0 to 9, a to f or A to F "; - reference "shall represent the support of 4 features as described in table 5.2.2-3 of TS 29.571 [61]."; + reference "shall represent the support of 4 features as described in + table 5.2.2-3 of TS 29.571 [61]."; //optional type string; config false; } leaf serviceInfoList { - description "It indicates a list of service specific information. It may be present - when the notification request of the notification type may be generated by multiple - services, i.e. notifications from different services may be received by the subscription."; + description "It indicates a list of service specific information. It may + be present when the notification request of the notification type may be + generated by multiple services, i.e. notifications from different + services may be received by the subscription."; //optional type string; config false; } leaf callbackUriPrefix { - description "It indicates the optional path segment(s) used to construct the prefix of the - Callback URIs during the reselection of an NF service consumer, as described in 3GPP TS 29.501"; + description "It indicates the optional path segment(s) used to construct + the prefix of the Callback URIs during the reselection of an NF service + consumer, as described in 3GPP TS 29.501"; //optional type inet:uri; } @@ -1104,9 +1111,9 @@ module _3gpp-common-yang-types { In addition, the MnS producer shall create on behalf of the MnS consumer a subscription, using 'NtfSubscriptionControl', for the notification types 'notifyMOICreation' and 'notifyMOIDeletion' related - to the 'File' instances that will be produced later. In case an existing - subscription does already include the 'File' instances to be produced, - no new subscription shall be created. The + to the 'File' instances that will be produced later. In case an + existing subscription does already include the 'File' instances to be + produced, no new subscription shall be created. The 'notificationRecipientAddress' attribute in the created 'NtfSubscriptionControl' instance shall be set to the value of the 'notificationRecipientAddress' in the related 'PerfMetricJob'. This @@ -1148,8 +1155,8 @@ module _3gpp-common-yang-types { leaf fileLocation { type string ; description "Applicable and must be present when the file-based - reporting method is supported, and the files are stored on the MnS - consumer."; + reporting method is supported, and the files are stored on the + MnS consumer."; } } case notification-target { diff --git a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang index b5479dfd0..50ed647f5 100755 --- a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang +++ b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang @@ -11,18 +11,20 @@ module _3gpp-nr-nrm-eutranfreqrelation { import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the EUtranFreqRelation Information Object Class (IOC) that is part of the NR Network Resource Model (NRM). 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-01-25 { reference CR-; } + revision 2025-01-25 { reference CR-1442; } revision 2024-02-24 { reference CR-1218; } revision 2023-09-18 { reference CR-1043; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { + revision 2019-06-17 {reference CR-; } description "Initial revision"; + } grouping EUtranFreqRelationGrp { @@ -42,16 +44,16 @@ module _3gpp-nr-nrm-eutranfreqrelation { leaf-list blockListEntry { description "A list of Physical Cell Identities (PCIs) that are - blocklisted in E-UTRAN measurements."; + blocklisted in E-UTRAN measurements."; reference "3GPP TS 38.331"; - min-elements 0; + //optional type uint16 { range "0..503"; } } leaf-list blockListEntryIdleMode { description "A list of Physical Cell Identities (PCIs) that are blocklisted in SIB4 and SIB5."; - min-elements 0; + //optional type uint16 { range "0..1007"; } } @@ -153,7 +155,6 @@ module _3gpp-nr-nrm-eutranfreqrelation { serving frequency. Each frequency of NR and E-UTRAN might have a specific threshold."; reference "ThreshX, LowQ in 3GPP TS 38.304"; - mandatory false; type int32 { range "0..31"; } units dB; } @@ -196,7 +197,10 @@ module _3gpp-nr-nrm-eutranfreqrelation { } } - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + augment + /me3gpp:ManagedElement + /gnbcucp3gpp:GNBCUCPFunction + /nrcellcu3gpp:NRCellCU { list EUtranFreqRelation { description "Represents a frequency relation between an NR cell and an diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang index 9b0452ac3..b7c05dddd 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -350,7 +350,8 @@ module _3gpp-nr-nrm-gnbcucpfunction { leaf gnbIdLength { type int32 {range "22..32";} mandatory true; - description "This indicates the number of bits for encoding the gNB ID. See 'Global gNB ID' in subclause 9.3.1.6 of TS 38.413"; + description "This indicates the number of bits for encoding the gNB ID. + See 'Global gNB ID' in subclause 9.3.1.6 of TS 38.413"; } leaf gnbId { @@ -367,8 +368,8 @@ module _3gpp-nr-nrm-gnbcucpfunction { uses types3gpp:PLMNId; leaf enbId { - description "It identifies an eNB within a PLMN. The eNB ID is part of the E-UTRAN Cell Global Identifier (ECGI) of the eNB - cells."; + description "It identifies an eNB within a PLMN. The eNB ID is part of + the E-UTRAN Cell Global Identifier (ECGI) of the eNB cells."; reference "eNB ID in 3GPP TS 36.300. Global eNB ID in 3GPP TS 36.413."; mandatory true; type int32 {range "0..4194303";} diff --git a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang index 46b942353..d4b04ea70 100755 --- a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang +++ b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang @@ -10,19 +10,20 @@ module _3gpp-nr-nrm-nrfreqrelation { import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the NRFreqRelation Information Object Class (IOC) that is part of the NR Network Resource Model (NRM). 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-01-25 { reference CR-; } + revision 2025-01-25 { reference CR-1442; } revision 2024-02-24 { reference CR-1218; } revision 2023-09-18 { reference CR-1043; } revision 2023-04-26 { reference CR-0916; } revision 2020-04-23 { reference CR-0281; } revision 2019-10-28 { reference S5-193518; } - revision 2019-06-17 { + revision 2019-06-17 { reference S5-} description "Initial revision"; } @@ -81,14 +82,12 @@ module _3gpp-nr-nrm-nrfreqrelation { description "A list of Physical Cell Identities (PCIs) that are blocklisted in NR measurements."; reference "3GPP TS 38.331"; - min-elements 0; type uint16 { range "0..503"; } } leaf-list blockListEntryIdleMode { description "A list of Physical Cell Identities (PCIs) that are blocklisted in SIB4 and SIB5."; - min-elements 0; type uint16 { range "0..1007"; } } @@ -117,7 +116,6 @@ module _3gpp-nr-nrm-nrfreqrelation { description "Used for calculation of the parameter Pcompensation (defined in 3GPP TS 38.304), at cell reselection to a cell."; reference "PEMAX in 3GPP TS 38.101-1"; - mandatory false; type int32 { range "-30..33"; } units dBm; } @@ -125,7 +123,6 @@ module _3gpp-nr-nrm-nrfreqrelation { leaf qOffsetFreq { description "The frequency specific offset applied when evaluating candidates for cell reselection."; - mandatory false; type types3gpp:QOffsetRange; default 0; } @@ -204,7 +201,7 @@ module _3gpp-nr-nrm-nrfreqrelation { units s; } - leaf tReselectionNRSfHigh { + leaf tReselectionNRSfHigh { description "The attribute tReselectionNr (parameter TreselectionNR in 3GPP TS 38.304) is multiplied with this scaling factor if the UE is in high mobility state."; @@ -226,14 +223,17 @@ module _3gpp-nr-nrm-nrfreqrelation { units %; } - leaf nRFrequencyRef { + leaf nRFrequencyRef { description "Reference to a corresponding NRFrequency instance."; mandatory true; type types3gpp:DistinguishedName; } } - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + augment + /me3gpp:ManagedElement + /gnbcucp3gpp:GNBCUCPFunction + /nrcellcu3gpp:NRCellCU { list NRFreqRelation { description "Together with the target NRFrequency, it represents the diff --git a/yang-models/_3gpp-nr-nrm-nrfrequency.yang b/yang-models/_3gpp-nr-nrm-nrfrequency.yang index 1ae6f94fc..d3acc7a0f 100755 --- a/yang-models/_3gpp-nr-nrm-nrfrequency.yang +++ b/yang-models/_3gpp-nr-nrm-nrfrequency.yang @@ -1,6 +1,6 @@ module _3gpp-nr-nrm-nrfrequency { yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-nrfrequency"; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrfrequency"; prefix "nrfreq3gpp"; import _3gpp-common-managed-function { prefix mf3gpp; } @@ -9,6 +9,7 @@ module _3gpp-nr-nrm-nrfrequency { import _3gpp-common-top { prefix top3gpp; } organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the NRFrequency Information Object Class (IOC) that is part of the NR Network Resource Model (NRM). Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, @@ -18,7 +19,7 @@ module _3gpp-nr-nrm-nrfrequency { revision 2025-01-25 { reference CR-1442 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { + revision 2019-06-17 { reference S5-} description "Initial revision"; } @@ -45,7 +46,7 @@ module _3gpp-nr-nrm-nrfrequency { description "List of additional frequency bands the frequency belongs to. The list is automatically set by the gNB."; config false; - min-elements 0; + min-elements 1; type uint16 { range "1..256"; } } } diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang index 7aba7f7e6..2491ec1c2 100755 --- a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang +++ b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang @@ -23,10 +23,10 @@ module _3gpp-ns-nrm-networkslicesubnet { Information model definitions for network slice NRM (chapter 6) "; - revision 2025-01-25 { reference CR-1412 ; } + revision 2025-01-25 { reference CR-1442 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2022-07-26 { reference CR-0770 ; } - revision 2021-05-05 { + revision 2021-05-05 { reference CR- } description "replace perfReq with 3 new datatypes xxxSliceSubnetProfile"; reference "CR-0485"; } @@ -56,7 +56,8 @@ module _3gpp-ns-nrm-networkslicesubnet { type string; } leaf connectionPointIdType { - description "This parameter specifies the type of the connection point identifier"; + description "This parameter specifies the type of the connection point + identifier"; type enumeration { enum VLAN; enum MPLS; -- GitLab From 66312d6cd3ec6d882e4c5944eee8b3fddbbd6c90 Mon Sep 17 00:00:00 2001 From: rosabolzek Date: Tue, 4 Feb 2025 09:50:55 +0100 Subject: [PATCH 03/14] Updated YANG models for compliance and corrections --- yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang | 11 ++++------- yang-models/_3gpp-nr-nrm-nrfreqrelation.yang | 8 +++----- yang-models/_3gpp-nr-nrm-nrfrequency.yang | 3 ++- yang-models/_3gpp-ns-nrm-networkslicesubnet.yang | 6 +++--- 4 files changed, 12 insertions(+), 16 deletions(-) diff --git a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang index 50ed647f5..6318de4ca 100755 --- a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang +++ b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang @@ -22,9 +22,9 @@ module _3gpp-nr-nrm-eutranfreqrelation { revision 2024-02-24 { reference CR-1218; } revision 2023-09-18 { reference CR-1043; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 {reference CR-; } + revision 2019-06-17 { + reference "Initial version"; description "Initial revision"; - } grouping EUtranFreqRelationGrp { @@ -196,11 +196,8 @@ module _3gpp-nr-nrm-eutranfreqrelation { type types3gpp:DistinguishedName; } } - - augment - /me3gpp:ManagedElement - /gnbcucp3gpp:GNBCUCPFunction - /nrcellcu3gpp:NRCellCU { + + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { list EUtranFreqRelation { description "Represents a frequency relation between an NR cell and an diff --git a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang index d4b04ea70..8ca1ce760 100755 --- a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang +++ b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang @@ -23,7 +23,8 @@ module _3gpp-nr-nrm-nrfreqrelation { revision 2023-04-26 { reference CR-0916; } revision 2020-04-23 { reference CR-0281; } revision 2019-10-28 { reference S5-193518; } - revision 2019-06-17 { reference S5-} + revision 2019-06-17 { + reference "Initial version"; description "Initial revision"; } @@ -230,10 +231,7 @@ module _3gpp-nr-nrm-nrfreqrelation { } } - augment - /me3gpp:ManagedElement - /gnbcucp3gpp:GNBCUCPFunction - /nrcellcu3gpp:NRCellCU { + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { list NRFreqRelation { description "Together with the target NRFrequency, it represents the diff --git a/yang-models/_3gpp-nr-nrm-nrfrequency.yang b/yang-models/_3gpp-nr-nrm-nrfrequency.yang index d3acc7a0f..5564721df 100755 --- a/yang-models/_3gpp-nr-nrm-nrfrequency.yang +++ b/yang-models/_3gpp-nr-nrm-nrfrequency.yang @@ -19,7 +19,8 @@ module _3gpp-nr-nrm-nrfrequency { revision 2025-01-25 { reference CR-1442 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { reference S5-} + revision 2019-06-17 { + reference "Initial version"; description "Initial revision"; } diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang index 2491ec1c2..8b31dd8ed 100755 --- a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang +++ b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang @@ -26,10 +26,10 @@ module _3gpp-ns-nrm-networkslicesubnet { revision 2025-01-25 { reference CR-1442 ; } revision 2023-09-18 { reference CR-1043 ; } revision 2022-07-26 { reference CR-0770 ; } - revision 2021-05-05 { reference CR- } - description "replace perfReq with 3 new datatypes xxxSliceSubnetProfile"; + revision 2021-05-05 { reference "CR-0485"; - } + description "replace perfReq with 3 new datatypes xxxSliceSubnetProfile"; + } revision 2020-02-19 { description "Introduction of YANG definitions for network slice NRM"; -- GitLab From d646b607701a45a344f84de1ced61bfa9b353cdf Mon Sep 17 00:00:00 2001 From: rosabolzek Date: Tue, 4 Feb 2025 10:04:30 +0100 Subject: [PATCH 04/14] Updated YANG models for compliance and corrections --- yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang | 3 ++- yang-models/_3gpp-nr-nrm-nrfreqrelation.yang | 9 +++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang index 6318de4ca..32e67873d 100755 --- a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang +++ b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang @@ -197,7 +197,8 @@ module _3gpp-nr-nrm-eutranfreqrelation { } } - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + augment "/me3gpp:ManagedElement" + + "/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { list EUtranFreqRelation { description "Represents a frequency relation between an NR cell and an diff --git a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang index 8ca1ce760..f3f80a3d9 100755 --- a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang +++ b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang @@ -194,15 +194,15 @@ module _3gpp-nr-nrm-nrfreqrelation { units dB; } - leaf tReselectionNR { + leaf tReselectionNR { description "Cell reselection timer for NR."; reference "TreselectionRAT for NR in 3GPP TS 38.331"; mandatory true; type int32 { range "0..7"; } - units s; + units s; } - leaf tReselectionNRSfHigh { + leaf tReselectionNRSfHigh { description "The attribute tReselectionNr (parameter TreselectionNR in 3GPP TS 38.304) is multiplied with this scaling factor if the UE is in high mobility state."; @@ -231,7 +231,8 @@ module _3gpp-nr-nrm-nrfreqrelation { } } - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + augment "/me3gpp:ManagedElement" + + "/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { list NRFreqRelation { description "Together with the target NRFrequency, it represents the -- GitLab From 23db97320ce18e6a668b6295f0e99993908b1a60 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Wed, 5 Feb 2025 15:15:44 +0100 Subject: [PATCH 05/14] yang extensions updated --- yang-models/_3gpp-common-yang-extensions.yang | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang index dc9c8e5b5..05ab00ea5 100755 --- a/yang-models/_3gpp-common-yang-extensions.yang +++ b/yang-models/_3gpp-common-yang-extensions.yang @@ -46,6 +46,7 @@ module _3gpp-common-yang-extensions { Solution Set (SS) definitions 3GPP TS 28.623"; + revision 2024-12-13 { reference "CR-0492" ; } revision 2024-04-05 { reference "CR-0332, 0333" ; } revision 2023-09-17 { reference "CR-0270, 0271" ; } revision 2022-10-31 { reference "CR-0195, 0196"; } @@ -65,7 +66,9 @@ module _3gpp-common-yang-extensions { Zero or one only-system-created statement per parent statement is allowed. No sub-statements are allowed. - Adding this statement is an NBC change, removing it is BC."; + Adding this statement is an NBC change, + removing it is BC, however if the system behavior is also changed in + parallel (the system stops creating the MOIs), this behavior is NBC."; } extension notNotifyable { @@ -73,14 +76,16 @@ module _3gpp-common-yang-extensions { "Indicates that data change notifications shall not be sent for this attribute. If the extension is not present and other conditions are fulfilled data change notification should be sent. + If a list or container already has the notNotifyable extension, that is also valid for all contained data nodes. The statement MUST only be a substatement of a leaf, leaf-list, list, container statement that is contained within the 'attributes' container of an IOC and that represents an attribute or sub-parts of - an attribute . - + an attribute. If the attribute is represented by a container or list, + the statement shall be put on these, not on data nodes inside the + list/container. Zero or one notNotifyable statement is allowed per parent statement. NO substatements are allowed. @@ -103,8 +108,12 @@ module _3gpp-common-yang-extensions { It is unnecessary to use and MUST NOT be used for key leafs. - The statement MUST only be a substatement of a leaf, leaf-list, list - statement that is config=true. + The statement MUST only be a substatement of a leaf, leaf-list, list, + container statement that is contained within the 'attributes' + container of an IOC and that represents an attribute or sub-parts of + an attribute and is config=true. If the attribute is represented by a + container or list, the statement shall be put on these, not on data + nodes inside the list/container. Zero or one inVariant statement is allowed per parent statement. NO substatements are allowed. -- GitLab From 2302b1fd4957d30207f79f1ac6d1d0366f15c634 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Wed, 5 Feb 2025 15:25:00 +0100 Subject: [PATCH 06/14] yang extension 2 --- yang-models/_3gpp-common-yang-extensions.yang | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang index 05ab00ea5..9fc38940c 100755 --- a/yang-models/_3gpp-common-yang-extensions.yang +++ b/yang-models/_3gpp-common-yang-extensions.yang @@ -38,7 +38,7 @@ module _3gpp-common-yang-extensions { If support for an extension is missing the extension statement needs individual handling or it SHOULD be removed from the module using the extension e.g. with a deviation. - 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.623 Generic Network Resource Model (NRM) @@ -46,7 +46,7 @@ module _3gpp-common-yang-extensions { Solution Set (SS) definitions 3GPP TS 28.623"; - revision 2024-12-13 { reference "CR-0492" ; } + revision 2025-02-07 { reference "CR-0492" ; } revision 2024-04-05 { reference "CR-0332, 0333" ; } revision 2023-09-17 { reference "CR-0270, 0271" ; } revision 2022-10-31 { reference "CR-0195, 0196"; } -- GitLab From 7e5f91c40b2587153ce7d136981f188cd49fb8b6 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Thu, 6 Feb 2025 01:12:17 +0100 Subject: [PATCH 07/14] yang extension 3 common with r18 --- yang-models/_3gpp-common-yang-extensions.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang index 9fc38940c..0b1c1ee27 100755 --- a/yang-models/_3gpp-common-yang-extensions.yang +++ b/yang-models/_3gpp-common-yang-extensions.yang @@ -46,7 +46,7 @@ module _3gpp-common-yang-extensions { Solution Set (SS) definitions 3GPP TS 28.623"; - revision 2025-02-07 { reference "CR-0492" ; } + revision 2025-01-12 { reference "CR-0507, 0492" ; } revision 2024-04-05 { reference "CR-0332, 0333" ; } revision 2023-09-17 { reference "CR-0270, 0271" ; } revision 2022-10-31 { reference "CR-0195, 0196"; } -- GitLab From 18a88fe00bf5a71a50646cff1919275783f35328 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Thu, 6 Feb 2025 15:23:43 +0100 Subject: [PATCH 08/14] thresholdinfo in fm corrected --- yang-models/_3gpp-common-fm.yang | 44 ++------------------------------ 1 file changed, 2 insertions(+), 42 deletions(-) diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang index 223ea0033..62ee4555e 100755 --- a/yang-models/_3gpp-common-fm.yang +++ b/yang-models/_3gpp-common-fm.yang @@ -7,6 +7,7 @@ module _3gpp-common-fm { import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-yang-extensions { prefix yext3gpp; } + import _3gpp-common-measurements { prefix meas3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -255,52 +256,11 @@ module _3gpp-common-fm { yext3gpp:notNotifyable; } - grouping ThresholdInfoGrp { - leaf measurementType { - type string; - mandatory true; - } - - leaf direction { - type enumeration { - enum INCREASING; - enum DECREASING; - } - mandatory true; - description " - If it is 'Increasing', the threshold crossing notification is - triggered when the measurement value equals or exceeds a - thresholdValue. - - If it is 'Decreasing', the threshold crossing notification is - triggered when the measurement value equals or below a - thresholdValue."; - } - - leaf thresholdLevel { - type string; - } - - leaf thresholdValue { - type string; - } - - leaf hysteresis { - type string; - description "The hysteresis has a threshold high and a threshold - low value that are different from the threshold value. - A hysteresis, therefore, defines the threshold-high and - threshold-low levels within which the measurementType value is - allowed to oscillate without triggering the threshold crossing - notification."; - } - } - list thresholdInfo { config false ; yext3gpp:notNotifyable; description "Indicates the crossed threshold"; - uses ThresholdInfoGrp; + uses meas3gpp:ThresholdInfoGrp; } list stateChangeDefinition { -- GitLab From 3be825c34f2eefbafc4fe33b1d5e4a7b70f21e29 Mon Sep 17 00:00:00 2001 From: rosabolzek Date: Thu, 6 Feb 2025 16:17:33 +0100 Subject: [PATCH 09/14] Corrrect NpnId defintions for _3gpp-common-trace.yang _3gpp-common-yang-types.yang_3gpp-nr-nrm-nrcelldu.yang --- yang-models/_3gpp-common-trace.yang | 32 +++--------------- yang-models/_3gpp-common-yang-types.yang | 42 ++++++++++-------------- yang-models/_3gpp-nr-nrm-nrcelldu.yang | 3 +- 3 files changed, 24 insertions(+), 53 deletions(-) diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang index 3c0f3401b..8894d92f3 100755 --- a/yang-models/_3gpp-common-trace.yang +++ b/yang-models/_3gpp-common-trace.yang @@ -26,6 +26,7 @@ module _3gpp-common-trace { Integration Reference Point (IRP); Information Service (IS)" ; + revision 2024-11-25 { reference CR-0942; } revision 2024-11-07 { reference "CR-0480"; } revision 2024-10-01 { reference "CR-0457"; } revision 2024-08-13 { reference "CR-0387 CR-0377"; } @@ -158,36 +159,11 @@ module _3gpp-common-trace { identified by Network ID with associated plmn-Identity"; key idx; min-elements 1; - uses NpnIdGrp; + uses types3gpp:NpnIdGrp; leaf idx { type string; } } } - grouping NpnIdGrp { - description "Represents the NpnId dataType."; - - list plmnId { - key "mcc mnc"; - description "It specifies the PLMN Id of the NPN network."; - uses types3gpp:PLMNId; - max-elements 1; - } - - list cAGIdList { - key idx; - max-elements 256; - description "It specifies the PNI-NPN identified by CAG ID "; - leaf idx { type string; } - } - - list nIDList { - key idx; - max-elements 16; - description "It specifies the SNPN identified by Network ID"; - leaf idx { type string; } - } - } - grouping ExcessPacketDelayThresholdsGrp { description "Represents the ExcessPacketDelayThresholds dataType. This <> defines a excess packet delay threshold information @@ -1430,7 +1406,7 @@ module _3gpp-common-trace { corresponding PNI-NPN or SNPN."; key idx; max-elements 1; - uses NpnIdGrp; + uses types3gpp:NpnIdGrp; leaf idx { type string;} } } @@ -1798,7 +1774,7 @@ module _3gpp-common-trace { several NPNs are supported in the RAN."; key idx; max-elements 1; - uses NpnIdGrp; + uses types3gpp:NpnIdGrp; leaf idx { type string;} } } diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index de9ff55c9..f316abd34 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 2024-11-25 { reference CR-0942; } revision 2024-11-25 { reference CR-1442; } revision 2024-11-25 { reference CR-1412; } revision 2024-11-01 { reference CR-0463; } @@ -301,42 +302,35 @@ module _3gpp-common-yang-types { yext3gpp:notNotifyable; } } - grouping NPNIdGrp { + grouping NpnIdGrp { description "Represents the NPN supported by the <> using this <> as one of its attributes in case of the cell is a NPN-only cell."; - list plmnid { + list plmnId { key "mcc mnc"; min-elements 1; - description "PLMNId"; + description "It specifies the PLMN Id of the NPN network."; uses types3gpp:PLMNId; } - leaf cAGIdList { - type string; - mandatory true; + list cAGIdList { + key idx; + max-elements 256; description "It identifies a CAG list containing up to 12 CAG-identifiers - per PLMN Identity, see TS 38.331. - - CAG is used for the PNI-NPNs to prevent UE(s), which are not allowed - to access the NPN via the associated cell(s), from automatically - selecting and accessing the associated CAG cell(s). - - CAG ID is used to combine with PLMN ID to identify a PNI-NPN. - - Exist if the cell is a NPN-only cell see TS 38.331"; + per Ue or up to 12 CAG-identifiers per cell, see TS 38.331 [38]. + CAG ID is used to combine with PLMN ID to identify a PNI-NPN.CAG ID is + a hexadecimal range with size 32 bit"; + leaf idx { type string; } } - leaf nIDList { - type string; - mandatory true; - description "It identifies a list of NIDs containing up to 12 NIDs per - PLMN Identity, see TS 38.331. - - NID is used to combine with PLMN ID to identify an SNPN. - - Exist if the cell is a NPN-only cell see TS 38.331"; + list nIDList { + key idx; + max-elements 16; + description "It identifies a list of NIDs containing up to 16 NIDs, see + TS 38.331 [38].NID is used to combine with PLMN ID to identify an SNPN. + NID is a hexadecimal range with size 44 bit."; + leaf idx { type string; } } } diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang index 94420e4df..8db5164c4 100755 --- a/yang-models/_3gpp-nr-nrm-nrcelldu.yang +++ b/yang-models/_3gpp-nr-nrm-nrcelldu.yang @@ -19,6 +19,7 @@ module _3gpp-nr-nrm-nrcelldu { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2024-11-25 { reference CR-0942; } revision 2024-05-25 { reference CR-1412 ; } revision 2024-05-24 { reference CR-1273 ; } revision 2023-09-18 { reference CR-1043 ; } @@ -105,7 +106,7 @@ module _3gpp-nr-nrm-nrcelldu { corresponding PNI-NPN or SNPN in case of the cell is NPN-only cell."; reference "3GPP TS 38.331"; leaf idx { type uint32 ; } - uses types3gpp:NPNIdGrp; + uses types3gpp:NpnIdGrp; } leaf nRPCI { -- GitLab From 753c03a94654ceee2eb3fc02e1c6c29999373469 Mon Sep 17 00:00:00 2001 From: rosabolzek Date: Thu, 6 Feb 2025 16:23:13 +0100 Subject: [PATCH 10/14] Corrrect min-elements 0 --- yang-models/_3gpp-common-trace.yang | 1 - 1 file changed, 1 deletion(-) diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang index 8894d92f3..d4ce40c13 100755 --- a/yang-models/_3gpp-common-trace.yang +++ b/yang-models/_3gpp-common-trace.yang @@ -1440,7 +1440,6 @@ module _3gpp-common-trace { key "idx"; leaf idx { type uint32 ; } description "It specifies the area where data shall be collected. "; - min-elements 0; max-elements 1; uses AreaScopeGrp; } -- GitLab From 481aa4bf9e914b1712996ecdb833dcb0e46549c9 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Thu, 6 Feb 2025 18:47:11 +0100 Subject: [PATCH 11/14] added CRno to fm --- yang-models/_3gpp-common-fm.yang | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang index 62ee4555e..da5d3eaee 100755 --- a/yang-models/_3gpp-common-fm.yang +++ b/yang-models/_3gpp-common-fm.yang @@ -13,12 +13,14 @@ module _3gpp-common-fm { contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines a Fault Management model - 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.111"; + revision 2025-02-07 { reference CR-0022 ; } revision 2024-05-12 { - description "The definition of the module was from TS 28.623 to TS 28.111"; + description "The definition of the module was moved from TS 28.623 to + TS 28.111"; reference CR-0008 ; } revision 2024-03-06 { reference CR-0333 ; } -- GitLab From 90410851f80ff658ad30ded4dcc2ff029c52107d Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Fri, 7 Feb 2025 17:32:12 +0100 Subject: [PATCH 12/14] correcting crno+copyrigt --- yang-models/_3gpp-common-trace.yang | 4 ++-- yang-models/_3gpp-common-yang-types.yang | 2 +- yang-models/_3gpp-nr-nrm-nrcelldu.yang | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang index d4ce40c13..9b505b336 100755 --- a/yang-models/_3gpp-common-trace.yang +++ b/yang-models/_3gpp-common-trace.yang @@ -14,7 +14,7 @@ module _3gpp-common-trace { contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Trace handling - 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.623 Generic Network Resource Model (NRM) @@ -26,7 +26,7 @@ module _3gpp-common-trace { Integration Reference Point (IRP); Information Service (IS)" ; - revision 2024-11-25 { reference CR-0942; } + revision 2024-11-25 { reference CR-0492; } revision 2024-11-07 { reference "CR-0480"; } revision 2024-10-01 { reference "CR-0457"; } revision 2024-08-13 { reference "CR-0387 CR-0377"; } diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index f316abd34..7b2c50ed8 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -16,7 +16,7 @@ module _3gpp-common-yang-types { TTA, TTC). All rights reserved."; reference "3GPP TS 28.623"; - revision 2024-11-25 { reference CR-0942; } + revision 2025-02-07 { reference CR-0492; } revision 2024-11-25 { reference CR-1442; } revision 2024-11-25 { reference CR-1412; } revision 2024-11-01 { reference CR-0463; } diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang index 8db5164c4..392b11cd2 100755 --- a/yang-models/_3gpp-nr-nrm-nrcelldu.yang +++ b/yang-models/_3gpp-nr-nrm-nrcelldu.yang @@ -19,7 +19,7 @@ module _3gpp-nr-nrm-nrcelldu { TTA, TTC). All rights reserved."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - revision 2024-11-25 { reference CR-0942; } + revision 2025-02-07 { reference CR-1442; } revision 2024-05-25 { reference CR-1412 ; } revision 2024-05-24 { reference CR-1273 ; } revision 2023-09-18 { reference CR-1043 ; } -- GitLab From 47cacabce2237f6f2bf7170d5b9cfccad11f5dcf Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Mon, 10 Feb 2025 12:18:32 +0100 Subject: [PATCH 13/14] npnidgrp correction --- yang-models/_3gpp-common-yang-types.yang | 38 +++++++++++++----------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 7b2c50ed8..cfbcd7890 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -302,7 +302,8 @@ module _3gpp-common-yang-types { yext3gpp:notNotifyable; } } - grouping NpnIdGrp { + + grouping NpnIdGrp { description "Represents the NPN supported by the <> using this <> as one of its attributes in case of the cell is a NPN-only cell."; @@ -314,23 +315,24 @@ module _3gpp-common-yang-types { uses types3gpp:PLMNId; } - list cAGIdList { - key idx; - max-elements 256; - description "It identifies a CAG list containing up to 12 CAG-identifiers - per Ue or up to 12 CAG-identifiers per cell, see TS 38.331 [38]. - CAG ID is used to combine with PLMN ID to identify a PNI-NPN.CAG ID is - a hexadecimal range with size 32 bit"; - leaf idx { type string; } - } - - list nIDList { - key idx; - max-elements 16; - description "It identifies a list of NIDs containing up to 16 NIDs, see - TS 38.331 [38].NID is used to combine with PLMN ID to identify an SNPN. - NID is a hexadecimal range with size 44 bit."; - leaf idx { type string; } + choice npnidChoice { + leaf-list cAGIdList { + type string; + max-elements 256; + description "It identifies a CAG list containing up to 12 + CAG-identifiers per Ue or up to 12 CAG-identifiers per cell, + see TS 38.331. + CAG ID is used to combine with PLMN ID to identify a PNI-NPN.CAG ID is + a hexadecimal range with size 32 bit"; + } + + leaf-list nIDList { + type string; + max-elements 16; + description "It identifies a list of NIDs containing up to 16 NIDs, see + TS 38.331. NID is used to combine with PLMN ID to identify an SNPN. + NID is a hexadecimal range with size 44 bit."; + } } } -- GitLab From 582302affdbe94b79801486ae6e4e09ad43699cd Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Wed, 19 Feb 2025 16:31:03 +0100 Subject: [PATCH 14/14] update GeographicalCoordinates remove altitude GeocoordinateGrp add alititude --- yang-models/_3gpp-common-yang-types.yang | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index cfbcd7890..1cc7338f2 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -372,7 +372,7 @@ module _3gpp-common-yang-types { grouping GeographicalCoordinates { description "This datatype represents the geographical coordinates"; - reference "#GPP TS 28.558 clause 6.3.8"; + reference "3GPP TS 28.538 clause 6.3.8"; leaf latitude { type Latitude; @@ -382,12 +382,7 @@ module _3gpp-common-yang-types { leaf longitude { type Longitude; mandatory true; - } - - leaf altitude { - type Altitude; - } - + } } typedef OnOff { @@ -722,6 +717,10 @@ module _3gpp-common-yang-types { global reference frame (WGS 84). Positive values correspond to degrees east of 0 degrees longitude."; } + + leaf altitude { + type Altitude; + } } grouping GeoAreaGrp { -- GitLab