Commit ed327d25 authored by rosabolzek's avatar rosabolzek Committed by lengyelb
Browse files

move PcfInfo and ProSeCapability to _3gpp-5gc-nrm-pcffunction

parent 9e62a5ef
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -8,7 +8,6 @@ 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-managed-nfprofile { prefix mnfp3gpp; }
+129 −2
Original line number Diff line number Diff line
@@ -10,15 +10,17 @@ module _3gpp-5gc-nrm-pcffunction {
  import _3gpp-common-yang-types { prefix types3gpp; }
  import _3gpp-5g-common-yang-types { prefix types5g3gpp; }
  import _3gpp-common-top { prefix top3gpp; }
  import _3gpp-5gc-nrm-managed-nfprofile { prefix mnfp3gpp; }
  
  organization "3gpp SA5";
  contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464";
  description "This IOC represents the PCF function in 5GC. For more 
    information about the PCF, see 3GPP TS 23.501.
    Copyright 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, 
    Copyright 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, 
    TTA, TTC). All rights reserved.";
  reference "3GPP TS 28.541";
  
  revision 2025-07-25 { reference CR-1558 ; } 
  revision 2024-05-24 { reference CR-1273 ; } 
  revision 2023-09-18 { reference CR-1043 ; } 
  revision 2023-04-26 { reference CR-0916; }
@@ -28,6 +30,117 @@ module _3gpp-5gc-nrm-pcffunction {
  revision 2019-10-25 { reference "S5-194457 S5-193518"; }
  revision 2019-05-22 { reference "initial revision"; }
  
   grouping ProSeCapabilityGrp {
      leaf proseDirectDiscovery {
        type boolean;
        description "Indicates support for ProSe Direct Discovery.";
        }
      leaf proseDirectCommunication {
          type boolean;
          description "Indicates support for ProSe Direct Communication.";
      }
      leaf proseL2UetoNetworkRelay {
          type boolean;
          description "Indicates support for ProSe Layer-2 
          UE-to-Network Relay..";
      }
      leaf proseL3UetoNetworkRelay {
          type boolean;
          description "Indicates support for ProSe Layer-3
           UE-to-Network Relay.";
      }
      leaf proseL2RemoteUe {
          type boolean;
          description "Indicates support for ProSe Layer-2
           Remote UE.";
      }
      leaf proseL3RemoteUe {
          type boolean;
          description "Indicates support for ProSe Layer-3 
          Remote UE.";
      }
      leaf proseL2UetoUeRelay {
          type boolean;
          description "Indicates support for ProSe Layer-2 
          UE-to-UE Relay.";
      }
      leaf proseL3UetoUeRelay {
        type boolean;
        description "Indicates support for ProSe Layer-3 
        UE-to-UE Relay.";
        }
      leaf proseL2EndUe {
          type boolean;
          description "Indicates support for ProSe Layer-2 End UE.";
      }
      leaf proseL3EndUe {
          type boolean;
          description "Indicates support for ProSe Layer-3 End UE.";
      }
      leaf proseL3IntermRelay {
          type boolean;
          description "Indicates support for ProSe Layer-3 
          Intermediate Relay.";
      }
      leaf proseL3MultihopRemote {
          type boolean;
          description "Indicates support for ProSe Layer-3 Multihop Remote.";
      }
      leaf proseL3NetMultihopRelay {
          type boolean;
          description "Indicates support for ProSe Layer-3 Network Multihop 
          Relay.";
      }
      leaf proseL3UeMultihopRelay {
          type boolean;
          description "Indicates support for ProSe Layer-3 UE Multihop Relay.";
      }
      leaf proseL3EndUeMultihop {
          type boolean;
          description "Indicates support for ProSe Layer-3 End UE Multihop.";
      }                 
    }   
    grouping pcfInfoGrp {
      
      leaf-list dnnList {
        description "DNNs supported by the PCF.
                     If not provided, the PCF can serve any DNN.";
        
        min-elements 1;
        type string;
      }
      
      list supiRanges {
        description "List of ranges of SUPIs that can be served by
         the PCF instance. If not provided, the PCF can serve any SUPI.";
        key "start end pattern";
        min-elements 1;
        uses mnfp3gpp:SupiRange;
      }
      
      leaf rxDiamHost {
        description "This IE shall be present if the PCF supports Rx interface.
                     When present, this IE shall indicate the Diameter host 
                     of the Rx interface for the PCF.
                     Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'.";
        
        type string;
      }
      
      leaf rxDiamRealm {
        description "This IE shall be present if the PCF supports Rx interface.
                     When present, this IE shall indicate the Diameter realm 
                     of the Rx interface for the PCF.
                     Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'.";
        
        type string;
      }
      list proseCapability {
        description "It indicates the supported ProSe Capability by the PCF.";
        uses ProSeCapabilityGrp;
        config false;
      }
    }
  grouping PCFFunctionGrp {
    description "Represents the PCFFunction IOC";
    uses mf3gpp:ManagedFunctionGrp;
@@ -63,10 +176,11 @@ module _3gpp-5gc-nrm-pcffunction {
    
    list managedNFProfile {
      key idx;
      leaf idx { type uint32; }
      min-elements 1;
      max-elements 1;
      description "Profile definition of a Managed NF (See TS 23.501)";
      uses types3gpp:ManagedNFProfile;
      uses mnfp3gpp:ManagedNFProfileGrp;
    }
    list commModelList {
      min-elements 1;
@@ -76,6 +190,19 @@ module _3gpp-5gc-nrm-pcffunction {
      reference "3GPP TS 23.501";
      uses types5g3gpp:CommModel;
    }
    leaf supportedBMOList {
      description "It is used to indicate the list of supported BMOs 
      (Bridge Managed Objects) required for integration with TSN system.";
      type string;
    }
    list pcfInfo {
      description "This attribute represents information of a PCF NF Instance. 
      Multiple pcfInfo may be allowed to define different DNN list for each 
      supiranges.";
      key idx;
      leaf idx { type uint32; }
      uses pcfInfoGrp;
    }
    leaf dynamic5QISetRef {
      type types3gpp:DistinguishedName;
      description "DN of the Dynamic5QISet that the PCFFunction supports