Commit 7a766238 authored by cintiarosa's avatar cintiarosa
Browse files

adding _3gpp-5gc-nrm-managed-nfprofile.yang file

parent 0317b2b8
Loading
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -12,7 +12,7 @@ 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.
@@ -20,6 +20,7 @@ module _3gpp-5gc-nrm-amffunction {
    TTA, TTC). All rights reserved.";
  reference "3GPP TS 28.541 5G Network Resource Model (NRM)";
  
  revision 2025-08-18 { reference CR- ; }
  revision 2025-08-18 { reference CR-1557 ; }
  revision 2024-10-06 { reference CR-1389; }
  revision 2024-04-04 { reference CR-1139; }
@@ -488,12 +489,14 @@ module _3gpp-5gc-nrm-amffunction {
        subclause 6.1.6.2.7 of  TS 29.531";
    }
    
    list managedNFProfile {
    list ManagedNFProfile {
      key idx;
      leaf idx { type uint32 ; }
      min-elements 1;
      max-elements 1;
      uses types3gpp:ManagedNFProfile;
      description "";
      uses mnfp3gpp:ManagedNFProfileGrp;
      description "This data type represents a Profile definition of a
       Managed NF (See TS 23.501 [2]).";
    }

    list commModelList {
+8 −4
Original line number Diff line number Diff line
@@ -8,10 +8,10 @@ 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";
@@ -21,6 +21,7 @@ module _3gpp-5gc-nrm-ausffunction {
    TTA, TTC). All rights reserved.";
  reference "3GPP TS 28.541";
  
  revision 2023-09-18 { reference CR- ; } 
  revision 2023-09-18 { reference CR-1043 ; } 
  revision 2022-01-07 { reference CR-0643; }
  revision 2020-11-06 { reference CR-0412 ; }
@@ -114,11 +115,14 @@ module _3gpp-5gc-nrm-ausffunction {
      type inet:domain-name;
    }
    
    list managedNFProfile {
    list ManagedNFProfile {
      key idx;
      leaf idx { type uint32 ; }
      min-elements 1;
      max-elements 1;
      uses types3gpp:ManagedNFProfile;
      uses mnfp3gpp:ManagedNFProfileGrp;
      description "This data type represents a Profile definition of a
       Managed NF (See TS 23.501 [2]).";
    }
  
    list commModelList {
+9 −3
Original line number Diff line number Diff line
@@ -9,6 +9,7 @@ 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.
@@ -16,6 +17,7 @@ module _3gpp-5gc-nrm-lmffunction {
    TTA, TTC). All rights reserved.";
  reference "3GPP TS 28.541";
  
  revision 2023-09-18 { reference CR- ; } 
  revision 2023-09-18 { reference CR-1043 ; } 
  revision 2019-10-25 { reference "S5-194457 S5193518"; }

@@ -38,10 +40,14 @@ module _3gpp-5gc-nrm-lmffunction {
      uses types3gpp:PLMNId;
    }
    
    list managedNFProfile {
    list ManagedNFProfile {
      key idx;
      leaf idx { type uint32 ; }
      min-elements 1;
      uses types3gpp:ManagedNFProfile;
      max-elements 1;
      uses mnfp3gpp:ManagedNFProfileGrp;
      description "This data type represents a Profile definition of a
       Managed NF (See TS 23.501 [2]).";
    }

    list commModelList {
+279 −0
Original line number Diff line number Diff line
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; }
 
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-07-25 { reference CR- ; }
  revision 2025-07-25 { 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 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 ID>.<nftype>set.5gc.mnc<MNC>.mcc<MCC> for a NF Set in a PLMN, or
      set<Set ID>.<nftype>set.5gc.nid<NID>.mnc<MNC>.mcc<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;
    }


}
}
+9 −5
Original line number Diff line number Diff line
@@ -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-08-18 { reference CR- ; }
  revision 2025-08-18 { reference CR-1557 ; }
  revision 2024-05-18 { reference CR-1273 ; } 
  revision 2024-04-12 { reference CR-1218 ; } 
@@ -293,12 +295,14 @@ module _3gpp-5gc-nrm-neffunction {
      uses types3gpp:SNssai;
    }

    list managedNFProfile {
      description "This parameter defines profile for managed NF(See TS 23.501)";
    list ManagedNFProfile {
      key idx;
      leaf idx { type uint32 ; }
      min-elements 1;
      max-elements 1;
      key idx;
      uses types3gpp:ManagedNFProfile;
      uses mnfp3gpp:ManagedNFProfileGrp;
      description "This data type represents a Profile definition of a
       Managed NF (See TS 23.501 [2]).";
    }
    
    leaf-list capabilityList {
Loading