Commit 4d4a1907 authored by lengyelb's avatar lengyelb
Browse files

r19 lift 3 5gc nrffunc

parent b6ee5d3f
Loading
Loading
Loading
Loading
Loading
+390 −380
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@ module _3gpp-5gc-nrm-nrffunction {
  import _3gpp-common-yang-types { prefix types3gpp; }
  import _3gpp-common-top { prefix top3gpp; }
  import _3gpp-5g-common-yang-types { prefix types5g3gpp; }
  import _3gpp-common-yang-extensions { prefix yext3gpp; }
  import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; }
  import _3gpp-5gc-nrm-udrfunction { prefix udr3gpp; }
  import _3gpp-5gc-nrm-udmfunction { prefix udm3gpp; }
@@ -21,7 +22,7 @@ module _3gpp-5gc-nrm-nrffunction {
  import _3gpp-5gc-nrm-nwdaffunction { prefix nwdaf3gpp;}
  import _3gpp-5gc-nrm-gmlcfunction { prefix gmlc3gpp;}
  import _3gpp-5gc-nrm-lmffunction { prefix lmf3gpp;}

  import _3gpp-5gc-nrm-aiot { prefix aiot3gpp;}

  organization "3gpp SA5";
  contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464";
@@ -31,6 +32,7 @@ module _3gpp-5gc-nrm-nrffunction {
    TTA, TTC). All rights reserved.";
  reference "3GPP TS 28.541";

  revision 2025-11-01 { reference CR-1640 ; }
  revision 2025-07-25 { reference CR-1558 ; }
  revision 2025-01-25 { reference CR-1442 ; }
  revision 2023-09-18 { reference CR-1043 ; }
@@ -40,9 +42,7 @@ module _3gpp-5gc-nrm-nrffunction {
  revision 2019-10-28 { reference S5-193518 ; }
  revision 2019-05-15 { reference "initial revision"; }


  grouping bsfInfo {

    list ipv4AddressRanges {
      description "List of ranges of IPv4 addresses handled by BSF.
        If not provided, the BSF can serve any IPv4 address.";
@@ -53,7 +53,6 @@ module _3gpp-5gc-nrm-nrffunction {
    leaf-list dnnList {
      description "List of DNNs handled by the BSF
        If not provided, the BSF can serve any DNN.";

      min-elements 1;
      type string;
    }
@@ -74,7 +73,6 @@ module _3gpp-5gc-nrm-nrffunction {
    }
  }
  grouping chfInfo {

    list supiRangeList {
      description "List of ranges of SUPIs that can be served by
       the CHF instance. If not provided, the CHF can serve any SUPI.";
@@ -102,7 +100,6 @@ module _3gpp-5gc-nrm-nrffunction {
      uses types3gpp:PLMNId;
    }
    leaf primaryChfInstance {
        //optional
      description "This attribute represents the NF Instance Id of the
      primary CHF instance. This attribute shall be absent if the
      secondaryChfInstance is present.";
@@ -110,7 +107,6 @@ module _3gpp-5gc-nrm-nrffunction {

    }
    leaf secondaryChfInstance {
        //optional
      description "This attribute represents the NF Instance Id of the
      secondary CHF instance.This attribute shall be absent if the
      primaryChfInstance is present.";
@@ -118,7 +114,8 @@ module _3gpp-5gc-nrm-nrffunction {
    }
  }
  grouping pcscfInfo  {
        description "This data type represents the information of a P-CSCF NF Instance.
    description "This data type represents the information of a P-CSCF 
      NF Instance.
      For more information, see clause 6.1.6.2.53 of TS 29.510.";

    leaf-list accessType {
@@ -147,41 +144,35 @@ module _3gpp-5gc-nrm-nrffunction {
    }
    leaf-list gmFqdn {
      description "This attribute represents FQDN of the P-CSCF for the Gm
        interface..";
        interface.";
      max-elements 1;
      type string;
        //optional
    }
    leaf-list gmIpv4Addresses {
      description "This attribute represents list of IPv4 addresses of of
        the P-CSCF for the Gm interface.";
      type inet:ipv4-address;
        //optional
    }
    leaf-list gmIpv6Addresses {
      description "This attribute represents list of IPv6 addresses of of the
        P-CSCF for the Gm interface.";
      type inet:ipv6-address;
        //optional
    }
    leaf mwFqdn {
      description "This attribute represents FQDN of the P-CSCF for the Mw
        interface.";
      type string;
        //optional
    }
    leaf-list mwIpv4Addresses {
      description "List of ranges of PLMNs (including the PLMN
        IDs of the CHF instance) that can be served by the CHF instance.
        If not provided, the CHF can serve any PLMN.";
      type inet:ipv4-address;
        //optional
    }
    leaf-list mwIpv6Addresses {
      description "This attribute represents list of IPv4 addresses of
      the P-CSCF for the Mw interface.";
      type inet:ipv6-address;
        //optional
    }
    list servedIpv4AddressRanges {
      description "List of ranges of PLMNs (including the PLMN
@@ -191,7 +182,6 @@ module _3gpp-5gc-nrm-nrffunction {
      min-elements 1;
      key "mcc mnc";
      uses types3gpp:PLMNId;
        //optional
    }
  }
  grouping HssInfoGrp {
@@ -625,27 +615,52 @@ module _3gpp-5gc-nrm-nrffunction {
      uses types3gpp:PLMNId;
    }
  }
  grouping AIoTNRFMappingGrp {
    description "Data type AIoTNRFMapping";
    
    leaf aIOTFdN {
      type types3gpp:DistinguishedName;
      mandatory true;
      description "Represents the distinguished name (DN) identifier of the 
        AIOTF that serves the (internal) target area provided by NEF to NRF";
    } 
    
    list internalTargetArea {
      description "It is the (internal) target area used by NRF (as provided 
        by NEF) to accurately locate the AIOTF instance. It is mapped to aIOTFdN. 
        It could refer to a list of AIoT Areas.";
      key idx;
      leaf idx { type uint32; }
      min-elements 1;
      uses aiot3gpp:ServedAIOTAreaIDGrp;
    } 
  }
  grouping NRFFunctionGrp {
    description "Represents the NRFFunction IOC";
    uses mf3gpp:ManagedFunctionGrp;

    list pLMNIdList {
      description "List of at most six entries of PLMN Identifiers, but at
        least one (the primary PLMN Id).
        The PLMN Identifier is composed of a Mobile Country Code (MCC) and a
        Mobile Network Code (MNC).";
    list pLMNInfoList {
      description "It defines the PLMN(s) of a Network Function.";

      min-elements 1;
      max-elements 6;
      key "mcc mnc";
      uses types3gpp:PLMNId;
      key "mcc mnc sd sst";
      uses types5g3gpp:PLMNInfo;
    }


    leaf sBIFQDN {
      description "The FQDN of the registered NF instance in the service-based
        interface.";
      description "It is used to indicate the FQDN of the registered NF instance 
        in service-based interface, for example, NF instance FQDN structure is:
        nftype<nfnum>.slicetype<sliceid>.mnc<MNC>.mcc<MCC>.3gppnetwork.org";
      type inet:domain-name;
      mandatory true;
    }

    list nFProfileList {
      description "It is a set of NFProfile(s) to be registered in the NRF
      instance. NFProfile is defined in 3GPP TS 29.510 ";
      key idx;
      leaf idx { type uint32; }
      uses mnfp3gpp:ManagedNFProfileGrp;
    }

    leaf-list cNSIIdList {
@@ -657,32 +672,14 @@ module _3gpp-5gc-nrm-nrffunction {
      type string;
    }

    list sNSSAIList {
      description "List of S-NSSAIs the managed object is capable of supporting.
                   (Single Network Slice Selection Assistance Information)
                   An S-NSSAI has an SST (Slice/Service type) and an optional SD
                   (Slice Differentiator) field.";
      //optional support
      reference "3GPP TS 23.003";
      key "sd sst";
      uses types5g3gpp:SNssai;
    }

    list nrfInfo {
      description "";
      description "Represents information of an NRF NF Instance.";
      max-elements 1;
      key idx;
      leaf idx {type uint32;}
      uses NrfInfoGrp;
    }
    list nFProfileList {
      description "It is a set of NFProfile(s) to be registered in the NRF
      instance. NFProfile is defined in 3GPP TS 29.510 ";
      key idx;
      leaf idx { type uint32; }
      min-elements 1;
      max-elements 1;
      uses mnfp3gpp:ManagedNFProfileGrp;
    }

    list managedNFProfile {
      key idx;
      leaf idx { type uint32; }
@@ -692,6 +689,19 @@ module _3gpp-5gc-nrm-nrffunction {
      description "This parameter defines profile for managed NF";
      reference "3gpp TS 23.501";
    }
    
    list aIoTNRFMapping {
      config false;
      yext3gpp:inVariant;
      yext3gpp:notNotifyable;
      description "Represents mapping information between (Internal) target 
        area (provided by NEF) and AIOTF DN.";
      min-elements 1;
      key idx;
      leaf idx { type uint32; }
      
      uses AIoTNRFMappingGrp;
    }
  }

  augment "/me3gpp:ManagedElement" {