Commit 8300d4fb authored by mouqueta's avatar mouqueta
Browse files

Merge branch 'Integration_Rel18_SA5_158_YANG' into 'Rel-18'

Integration_Rel18_SA5_158_YANG into Rel-18

See merge request !1527
parents 250a05f2 1936fbd8
Loading
Loading
Loading
Loading
Loading
+41 −1
Original line number Diff line number Diff line
@@ -3,7 +3,6 @@ module _3gpp-5g-common-yang-types {
  namespace "urn:3gpp:sa5:_3gpp-5g-common-yang-types";
  prefix "types5g3gpp";
  
  
  import ietf-yang-types { prefix yang; }
  import _3gpp-common-yang-types { prefix types3gpp; }

@@ -15,6 +14,7 @@ module _3gpp-5g-common-yang-types {
    TTA, TTC). All rights reserved.";
  reference "3GPP TS 28.541";

  revision 2024-10-06 { reference CR-1389; }
  revision 2024-05-24 { reference CR-1273 ; } 
  revision 2023-09-18 { reference CR-1043 ; } 
  revision 2023-05-10 { reference CR-0916; }
@@ -22,6 +22,46 @@ module _3gpp-5g-common-yang-types {
  revision 2020-11-05 { reference CR-0412 ; }
  revision 2019-10-20 { reference "Initial version."; }
 
  grouping NcgiGrp {
    description "Represents the Ncgi datatype";
    
    list plmnId {
      description "This attribute represents a PLMN Identity.";
      min-elements 1;
      max-elements 1;
      key "idx";
      leaf idx { type uint32 ; }
      uses types3gpp:PLMNId ; 
    }
    
    leaf nrCellId {
      type string;
      mandatory true;
      description "This attribute represents NR Cell Identity.
        It's a 36-bit string identifying an NR Cell Id as specified in 
        clause 9.3.1.7 of TS 38.413, in hexadecimal representation. Each 
        character in the string shall take a value of 
        '0' to '9', 'a' to 'f' or 'A' to 'F' and shall represent 4 bits. 
        The most significant character representing the 4 most significant 
        bits of the Cell Id shall appear first in the string, and the 
        character representing the 4 least significant bit of the 
        Cell Id shall appear last in the string.

        Pattern: '^[A-Fa-f0-9]{9}$' 

        Example:
        An NR Cell Id 0x225BD6007 shall be encoded as '225BD6007'.";
    }
    
    leaf nId {
      type string;
      mandatory true;
      description "Network Identity; Shall be present if PlmnIdNid identifies 
        an SNPN (see clauses 5.30.2.3, 5.30.2.9, 6.3.4, and 6.3.8 in 
        3GPP TS 23.501.";
    }
  }
  
  typedef NRTAC {
    type string;
    description "This holds the identity of the common Tracking Area Code 
+366 −24
Original line number Diff line number Diff line
@@ -8,7 +8,10 @@ module _3gpp-5gc-nrm-amffunction {
  import _3gpp-common-yang-types { prefix types3gpp; }
  import _3gpp-5g-common-yang-types { prefix types5g3gpp; }
  import ietf-inet-types { prefix inet; }
  import ietf-yang-types { prefix yang; }
  import _3gpp-common-top { prefix top3gpp; }
  import _3gpp-nr-nrm-gnbcuupfunction { prefix gnbcuup3gpp ;}
  import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; }

  organization "3gpp SA5";
  contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464";
@@ -17,16 +20,16 @@ module _3gpp-5gc-nrm-amffunction {
    TTA, TTC). All rights reserved.";
  reference "3GPP TS 28.541 5G Network Resource Model (NRM)";
  
  revision 2024-10-06 { reference CR-1389; }
  revision 2024-04-04 { reference CR-1139; }
  revision 2023-09-18 { reference CR-1043 ; } 
  revision 2022-01-07 { reference CR-0643; }
  revision 2020-11-06 { reference CR-0412 ; }
  revision 2019-10-25 { reference "S5-194457 S5-193518"; }

  revision 2019-05-31 { reference "Ericsson refactoring."; }
  revision 2018-08-07 { reference "Initial revision"; }
                                     
  grouping GlobalRanNodeIDGrp{
  grouping NTNGlobalRanNodeIDGrp{
    
    list pLMNId {
      description "The PLMN Identifier is composed of
@@ -116,14 +119,13 @@ module _3gpp-5gc-nrm-amffunction {
    }
  }

  grouping satelliteBackhaulInfo{
  grouping SatelliteBackhaulInfoGrp{
    description "Defines information related to satellite backhaul category
     and corresponding information of gNB.";
    reference "3GPP TS 23.501";

    list GlobalRanNodeID{
    list nTNGlobalRanNodeID{
      description "Unique identifier of an NG-RAN node.";
      uses GlobalRanNodeIDGrp;
      min-elements 1;
      max-elements 1;
      leaf GlobalRanNodeIDValue{
@@ -131,6 +133,7 @@ module _3gpp-5gc-nrm-amffunction {
        description "this relies on the choice of GlobalRanNodeID";
      }
      key "GlobalRanNodeIDValue";
      uses NTNGlobalRanNodeIDGrp;
    }

    leaf satelliteBackhaulCategory{
@@ -160,20 +163,309 @@ module _3gpp-5gc-nrm-amffunction {
    }
  }

  grouping GUAMInfoGrp {
    description "Represents the GUAMInfo datatype.";
    
    list pLMNId {
      description "This attribute represents a PLMN Identity.";
      min-elements 1;
      max-elements 1;
      key "idx";
      leaf idx { type uint32 ; }
      uses types3gpp:PLMNId ; 
    }
    
    leaf aMFIdentifier  {
      type int64;
      description "The AMFI is constructed from an AMF Region ID, an 
        AMF Set ID and an AMF Pointer. The AMF Region ID identifies the region, 
        the AMF Set ID uniquely identifies the AMF Set within the AMF Region, 
        and the AMF Pointer uniquely identifies the AMF within the AMF Set. 
        (Ref. 3GPP TS 23.003)";
    }
  }

  grouping N2InterfaceAmfInfoGrp {
    description "Represents the N2InterfaceAmfInfo datatype.";
    
    leaf-list ipv4EndpointAddress {
      type inet:ipv4-address;
      min-elements 1;
      description "This attribute represents available AMF endpoint 
        IPv4 address(es) for N2.";
    }
    
    leaf-list ipv6EndpointAddress {
      type inet:ipv6-address;
      min-elements 1;
      description "This attribute represents available AMF endpoint 
        IPv6 address(es) for N2.";
    }
    
    leaf amfName {
      type inet:host-name;
      description "This attribute represents AMF Name FQDN as defined in 
        clause 28.3.2.5 of TS 23.003.";
    }    
  }
  
  grouping BlockedLocationInfoGrp {
    description "Repreasents the datatype BlockedLocationInfo";
    
    list blockedLocation {
      description "This provides the geographical location at which the PLMN 
        are not allowed in case of NTN.";
      min-elements 1;
      max-elements 1;
      key "mnc mcc";
      uses types3gpp:PLMNId ; 
    }
    
    list blockedDurWindow {
      description "This provides the time durations for which the PLMN are 
        not allowed at a given location in case of NTN";
      key idx;
      leaf idx { type uint32 ; }
      uses types3gpp:TimeWindowGrp;
    }
    
    list blockedSlice {
      description "This provides the slice for which the access is 
        not allowed at a given location in case of NTN. ";
      max-elements 1;
      key idx;
      unique "sst sd";
      leaf idx { type uint32; }
      uses types5g3gpp:SNssai;
    }
  }
  
  grouping NTNPLMNRestrictionsInfoGrp {
    description "Represents the datatype NTNPLMNRestrictionsInfo";
    
    list pLMNId {
      description "This attribute represents a PLMN Identity.";
      min-elements 1;
      max-elements 1;
      key "mnc mcc";
      uses types3gpp:PLMNId ; 
    }
    
    list blockedLocationInfoList {
      description "This defines the information related with the location 
        for which the access restrictions are to be applied in case of NTN.";
      key "idx";
      leaf idx { type uint32 ; }
      uses BlockedLocationInfoGrp;
    }
  }
  
  grouping NtnLocationInfoGrp {
    description  "Represents the NtnLocationInfo datatype.";
    
    list location {
      description "This defines the Location (geographical area) under 
        consideration to which the satellite coverage info belongs";
      key idx;
      leaf idx { type uint32 ; }
      uses types3gpp:GeoAreaGrp;       
    }
    
    list availabilityWindows  {
      description "This attribute defines the list of time windows at which 
        the satellite coverage will be available for this location. 
        Either availabilityWindows or nonAvailabilityWindows shall be present.";
      key idx;
      leaf idx { type uint32 ; }
      uses types3gpp:TimeWindowGrp;
    }
    
    list nonAvailabilityWindows {
      description "This attribute defines the list of time windows at which 
        the satellite coverage will not be available for this location. 
        Either availabilityWindows or nonAvailabilityWindows shall be present.";
      key idx;
      leaf idx { type uint32 ; }
      uses types3gpp:TimeWindowGrp;
    }
  }
  
  grouping SatelliteCoverageInfoGrp {
    description "Represents the datatype SatelliteCoverageInfo";
    
    leaf nRSatelliteRATtype {
      type enumeration {
        enum NRLEO;
        enum NRMEO;
        enum NRGEO;
        enum NROTHERSAT;
      }
      description "This attribute defines the RAT Type for NR satellite 
        access.";
    }
    
    list locationInfo {
      description "This attribute defines the information about location and 
        corresponding time windows for which the satellite coverage will be 
        available or unavailable.";
      key idx;
      leaf idx { type uint32 ; }
      uses NtnLocationInfoGrp;
    }
  }
  
  grouping SliceExpiryInfoGrp {
    description "Represents the datatype SliceExpiryInfo";
    
    list pLMNInfo {
      min-elements 1;  // ???
      config false;
      description "It defines the PLMN(s) of a Network Function. ";
      key idx;
      leaf idx { type uint32 ; }
      uses types5g3gpp:PLMNInfo;
    }
    
    leaf expiryTime {
      type yang:date-and-time;
      config false;
      description "This attribute provides information about the time at 
        which the slice is scheduled to be expired as it is not required 
        anymore.
        This attribute will be set based on the sliceAvailability coming as 
        part of ServiceProfile.";
    }
  }
  
  grouping MappedCellIdInfoGrp {
    description "Represents the datatype MappedCellIdInfo";
    
    list ntnGeoArea {
      description "This attribute indicates a specific geographical location 
        mapped to Mapped Cell ID(s).";
      min-elements 1;
      max-elements 1;
      key "idx";
      leaf idx { type uint32 ; }
      uses types3gpp:GeoAreaGrp;       
    }
    
    list mappedCellId {
      description "This attribute is in format of NCGI to indicate a fixed 
        geographical area (See subclause 16.14.5 in TS 38.300";
      min-elements 1;
      max-elements 1;
      key "idx";
      leaf idx { type uint32 ; }
      uses types5g3gpp:NcgiGrp;       
    }  
  }
  
  grouping AmfInfoGrp {
    description "Represents the data type AmfInfo.";
    
    leaf amfRegionId {
      type int64;
      mandatory true;
      description "It represents the AMF Region ID, which identifies the 
        region. AllowedValues: defined in subclause 2.10.1 of 3GPP TS 23.003 ";
    }
    
    leaf amfSetId {
      type int64;
      mandatory true;
      description "It represents the AMF Set ID, which is uniquely identifies 
        the AMF Set within the AMF Region.
        allowedValues: defined in subclause 2.10.1 of 3GPP TS 23.003";
    }
    
    list taiList {
      min-elements 1;
      description "The list of TAIs.";
      key "idx";
      leaf idx { type uint32 ; }
      uses gnbcuup3gpp:TAIGrp; 
    }
    
    list taiRangeList {
      min-elements 1;
      description "The range of TAIs.";
      key "idx";
      leaf idx { type uint32 ; }
       uses nfp3gpp:TaiRangeGrp; 
    }
    
    list gUAMIdList {
      description "List of supported Globally Unique AMF Ids (GUAMIs).";
      config false;
      min-elements 1;
      key "idx";
      leaf idx { type uint32 ; }
      uses GUAMInfoGrp;
    }
    
    list backupInfoAmfFailure {
      description "List of GUAMIs for which the AMF acts as a backup for AMF 
        failure.";
      min-elements 1;
      key "idx";
      leaf idx { type uint32 ; }
      uses GUAMInfoGrp;
    }
    
    list backupInfoAmfRemoval {
      description "List of GUAMIs for which the AMF acts as a backup for 
        planned AMF removal.";
      min-elements 1;
      key "idx";
      leaf idx { type uint32 ; }
      uses GUAMInfoGrp;
    }
    
    list n2InterfaceAmfInfo {
      description "This attribute represents the N2 interface information of 
        the AMF. ";
      max-elements 1;
      key "idx";
      leaf idx { type uint32 ; }
      uses N2InterfaceAmfInfoGrp;
    }
    
    leaf amfOnboardingCapability {
      type boolean;
      default false;
      description "This attribute indicates the AMF supports SNPN Onboarding 
        capability. This is used for the case of Onboarding of UEs for SNPNs 
        (see TS 23.501, clause 5.30.2.10).
        - FALSE: AMF does not support SNPN Onboarding;
        - TRUE: AMF supports SNPN Onboarding.";
    }
    
    leaf highLatencyCom {
      type boolean;
      description "This attribute indicates whether the AMF supports High 
        Latency communication (e.g. for NR RedCap UE). This is used for CP NF 
        to discover AMF supporting High Latency communication (see TS 23.501, 
        clause 6.3.5).
        - FALSE: AMF does not support High Latency communication e.g. for 
        NR RedCap UE;
        - TRUE: AMF supports High Latency communication e.g. for NR RedCap UE;";
    }
  }
  
  grouping AMFFunctionGrp {
    description "Represents the AMFFunction IOC";
    uses mf3gpp:ManagedFunctionGrp;

    list pLMNIdList {
    list pLMNInfoList {
      min-elements 1;
      description "A list of PLMN identifiers (Mobile Country Code and Mobile
        Network Code).";
      key "mcc mnc";
      uses types3gpp:PLMNId;
      description "It defines the PLMN(s) of a Network Function. ";
      key idx;
      leaf idx { type uint32 ; }
      uses types5g3gpp:PLMNInfo;
    }

    container aMFIdentifier {
      //presence true;
      description "An AMF identifier, comprising an AMF Region ID, an
        AMF Set ID and an AMF Pointer.";  
      uses types3gpp:AmfIdentifier;
@@ -185,15 +477,14 @@ module _3gpp-5gc-nrm-amffunction {
      type inet:domain-name;
    }

    list sNSSAIList {
      min-elements 1;
      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.";
      reference "3GPP TS 23.003";
      key "sd sst";
      uses types5g3gpp:SNssai;
    leaf-list cNSIIdList {
      type string;
      description "It is a set of NSI ID. NSI ID is an identifier for 
        identifying the Core Network part of a Network Slice instance when 
        multiple Network Slice instances of the same Network Slice are deployed, 
        and there is a need to differentiate between them in the 5GC. 
        See NSI ID definition in clause 3.1 of TS 23.501 and 
        subclause 6.1.6.2.7 of  TS 29.531";
    }
    
    list managedNFProfile {
@@ -213,6 +504,39 @@ module _3gpp-5gc-nrm-amffunction {
      uses types5g3gpp:CommModel;
    }

    list amfInfo {
      max-elements 1;
      description "This attribute represents information of an AMF 
        NF Instance.";
      key "idx";
      leaf idx { type uint32 ; }
      uses AmfInfoGrp;
    }
    
    list nTNPLMNRestrictionsList {
      description "This attribute defines the location restrictions per PLMN 
        that relates to non-terrestrial network access.";
      key "idx";
      leaf idx { type uint32 ; }
      uses NTNPLMNRestrictionsInfoGrp;
    }
    
    list satelliteCoverageInfoList {
      description "This attribute defines the information related to NR 
        Satellite RAT type and corresponding information of satellite coverage";
      key "idx";
      leaf idx { type uint32 ; }
      uses SatelliteCoverageInfoGrp;
    }
    
    list sliceExpiryInfo {
      description "This provides information related to a network slice 
        validity.";
      key "idx";
      leaf idx { type uint32 ; }
      uses SliceExpiryInfoGrp;
    }
    
    list satelliteBackhaulInfoList{
      description "Specifies a list of satellite backhaul information. It can be
       used by NF and NF services.";
@@ -222,7 +546,7 @@ module _3gpp-5gc-nrm-amffunction {
      }
      key "GlobalRanNodeIDValue";
      min-elements 1;
      uses satelliteBackhaulInfo;
      uses SatelliteBackhaulInfoGrp;
    }

    leaf-list mdtUserConsentReqList {
@@ -243,12 +567,30 @@ module _3gpp-5gc-nrm-amffunction {
        Any MDT measurement, whose name is not specified in this list, is not 
        subject to user consent at MDT activation.";
    }
    
    list mappedCellIdInfoList {
      description "It provides the list of mapping between GEO area and 
        Mapped Cell ID.";
      key "idx";
      leaf idx { type uint32 ; }
      uses MappedCellIdInfoGrp;
    }
    
    leaf aMFSetRef {
      type types3gpp:DistinguishedName;
      description "This is the DN of AMFSet";
    }
  }
  
  augment "/me3gpp:ManagedElement" {
    list AMFFunction {
      description "5G Core AMF Function";
      reference "3GPP TS 28.541";
      description "This IOC represents the AMF functionality in 5GC. 
        For more information about the AMF, see 3GPP TS 23.501. 

        The attribute sliceExpiryInfo is used when the validity information of 
        a network slice need to be configured. The attribute 
        sliceExpiryInfo.pLMNInfo indicates the network slice to which the 
        validity information applies.";
      key id;
      uses top3gpp:Top_Grp;
      container attributes {
+16 −4
Original line number Diff line number Diff line
@@ -8,6 +8,7 @@ module _3gpp-common-filemanagement {
  import _3gpp-common-yang-types { prefix types3gpp; }
  import _3gpp-common-yang-extensions { prefix yext3gpp; }
  import _3gpp-common-managed-element { prefix me3gpp; }
  import ietf-inet-types { prefix inet; }
   
  organization "3GPP SA5";
  contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464";
@@ -17,6 +18,7 @@ module _3gpp-common-filemanagement {
    TTA, TTC). All rights reserved.";
  reference "3GPP TS 28.623 Generic Network Resource Model (NRM)";

  revision 2024-11-07 { reference CR-0473 ; }
  revision 2023-09-18 { reference CR-0271 ; } 
  revision 2023-02-14 { reference CR-0234; }
  revision 2022-10-24 { reference CR-0196;  }
@@ -52,12 +54,22 @@ module _3gpp-common-filemanagement {
    uses top3gpp:Top_Grp;
    
    leaf fileLocation {
      description "Provides the location of a file.
        allowedValues:  File URI (See RFC 8089)";
      mandatory true;
      type string;
      type inet:uri ;
      yext3gpp:notNotifyable;
      yext3gpp:inVariant;
      description "Location of the file incl. the file transfer protocol, 
        and the file name for the case the file content cannot be retrieved 
        by reading the 'fileContent' attribute.
        
        The allowed file transfer protocols are:
        - sftp
        - ftpes
        - https
        
        Examples:
        'sftp://companyA.com/datastore/fileName.xml',
        'https://companyA.com/ManagedElement=1/Files=1/File=1'
        ";
    }
    
    leaf notificationRecipientAddress {
+1 −1
Original line number Diff line number Diff line
@@ -34,7 +34,7 @@ module _3gpp-common-managed-element {
      3GPP TS 28.620 
      Umbrella Information Model (UIM)";
      
  revision 2024-08-12 { reference CR-1336 ; }
  revision 2024-10-01 { reference "CR-0437,CR-0438" ; }
  revision 2024-01-30 { reference CR-0328 ; } 
  revision 2023-11-14 { reference CR-0305 ; }
  revision 2023-09-18 { reference CR-0271 ; } 
+4 −0
Original line number Diff line number Diff line
@@ -56,6 +56,7 @@ module _3gpp-common-measurements {
      Integration Reference Point (IRP);
      Information Service (IS)";

  revision 2024-11-06 { reference CR-0487; } 
  revision 2024-05-06 { reference CR-0359; }
  revision 2024-02-24 { reference CR-0346; } 
  revision 2023-11-18 { reference "CR-0299 CR-0305"; }
@@ -187,6 +188,7 @@ module _3gpp-common-measurements {
  grouping SupportedPerfMetricGroupGrp {
    list SupportedPerfMetricGroups {
      config false;
      key idx;
      description "Captures a group of supported performance metrics and
        associated parameters related to their production and reporting.
        A SupportedPerfMetricGroup attribute which is part of an MOI may
@@ -195,6 +197,8 @@ module _3gpp-common-measurements {
        can specify supported metrics for contained ManagedFunctions
        like a GNBDUFunction.";

      leaf idx { type uint32; }

      leaf-list performanceMetrics {
        type string;
        min-elements 1;
Loading