module _3gpp-common-managed-element { yang-version 1.1; namespace urn:3gpp:sa5:_3gpp-common-managed-element; prefix "me3gpp"; import _3gpp-common-yang-types { prefix types3gpp ; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-measurements { prefix meas3gpp; } import _3gpp-common-subscription-control { prefix subscr3gpp; } import _3gpp-common-fm { prefix fm3gpp; } import _3gpp-common-trace { prefix trace3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines ManagedElement which will be augmented by other IOCs"; reference "3GPP TS 28.623 Generic Network Resource Model (NRM) Integration Reference Point (IRP); Solution Set (SS) definitions 3GPP TS 28.622 Generic Network Resource Model (NRM) Integration Reference Point (IRP); Information Service (IS) 3GPP TS 28.620 Umbrella Information Model (UIM)"; revision 2021-01-16 { reference "CR-0120"; } revision 2020-08-06 { reference "CR-0102"; } revision 2020-08-03 { reference "CR-0095"; } revision 2020-06-08 { reference "CR-0092"; } revision 2020-05-12 { reference "CR0084"; } revision 2020-02-24 { reference "S5-201365"; } revision 2019-06-17 { reference " S5-203316"; } revision 2019-05-08 { reference "Initial revision"; } feature MeasurementsUnderManagedElement { description "The MeasurementSubtree shall be contained under ManagedElement"; } feature SubscriptionControlUnderManagedElement { description "The SubscriptionControlSubtree shall be contained under ManagedElement"; } feature FmUnderManagedElement { description "The FmSubtree shall be contained under ManagedElement"; } feature TraceUnderManagedElement { description "The TraceSubtree shall be contained under ManageElement"; } feature DESManagementFunction { description "Class representing Distributed SON or Domain-Centralized SON Energy Saving feature. The DESManagementFunction shall be contained under ManagedElement."; } feature DMROFunction { description "Class representing D-SON function of MRO feature. The DMROFunction shall be contained under ManagedElement."; } feature DRACHOptimizationFunction { description "Class representing D-SON function of RACH optimization feature. The DRACHOptimizationFunction shall be contained under ManagedElement."; } feature DPCIConfigurationFunction { description "Class representing Distributed SON or Domain-Centralized SON function of PCI configuration feature. The DPCIConfigurationFunction shall be contained under ManagedElement."; } feature CPCIConfigurationFunction { description "Class representing Cross Domain-Centralized SON function of PCI configuration feature. The CPCIConfigurationFunction shall be contained under ManagedElement."; } feature CESManagementFunction { description "Class representing Cross Domain-Centralized SON Energy Saving feature. The CESManagementFunction shall be contained under ManagedElement."; } grouping ManagedElement_Grp { description "Abstract class representing telecommunications resources. An ME communicates with a manager (directly or indirectly) for the purpose of being monitored and/or controlled. MEs may perform element management functionality. An ME (and its contained Function_(s)) may or may not be geographically distributed. An ME (and its contained Function_(s)) is often referred to as a Network Element"; leaf dnPrefix { description "Provides naming context that allows the Managed Elements to be partitioned into logical domains. A Distingushed Name(DN) is defined by 3GPP TS 32.300, which splits the DN into a DN Prefix and Local DN"; type types3gpp:DistinguishedName; } leaf userLabel { description "A user-friendly (and user assignable) name of this object."; type string; } leaf locationName { description "The physical location (e.g. an address) of an entity represented by a (derivative of) ManagedElement_. It may contain no information to support the case where the derivative of ManagedElement_ needs to represent a distributed multi-location NE."; config false; type string; } leaf-list managedBy { description "Relates to the role played by ManagementSystem_ in the between ManagedSystem_ and ManagedElement_. This attribute contains a list of the DN(s) of the related subclasses of ManagementSystem_ instance(s)."; config false; type types3gpp:DistinguishedName; } leaf-list managedElementTypeList { description "The type of functionality provided by the ManagedElement. It may represent one ME functionality or a combination of more than one functionality. 1) The allowed values of this attribute are the names of the IOC(s) that are (a) derived/subclassed from ManagedFunction and (b) directly name-contained by ManagedElement IOC (on the first level below ManagedElement), but with the string 'Function' excluded. 2) If a ManagedElement contains multiple instances of a ManagedFunction this attribute will not contain repeated values. 3) The capitalisation (usage of upper/lower case) of characters in this attribute is insignificant. Thus, the NodeB should be case insensitive when reading these values. 4) Two examples of allowed values are: - NodeB; - HLR, VLR."; config false; min-elements 1; type string; } } grouping ManagedElementGrp { description "Represents telecommunications equipment or TMN entities within the telecommunications network providing support and/or service to the subscriber."; uses ManagedElement_Grp; uses meas3gpp:SupportedPerfMetricGroupGrp; leaf vendorName { config false; type string; } leaf userDefinedState { type string; description "An operator defined state for operator specific usage"; } leaf swVersion { config false; type string; } leaf priorityLabel { type uint32; mandatory true; } } list ManagedElement { description "Represents telecommunications equipment or TMN entities within the telecommunications network providing support and/or service to the subscriber. An ManagedElement IOC is used to represent a Network Element defined in TS 32.101 including virtualizeation or non-virtualization scenario. An ManagedElement instance is used for communicating with a manager (directly or indirectly) over one or more management interfaces for the purpose of being monitored and/or controlled. ManagedElement may or may not additionally perform element management functionality. An ManagedElement contains equipment that may or may not be geographically distributed. A telecommunication equipment has software and hardware components. The ManagedElement IOC described above represents following two case: - In the case when the software component is designed to run on dedicated hardware component, the ManagedElement IOC description includes both software and hardware components. - In the case when the software is designed to run on ETSI NFV defined NFVI [15], the ManagedElement IOC description would exclude the NFVI component supporting the above mentioned subject software. A ManagedElement may be contained in either a SubNetwork or in a MeContext instance. A single ManagedElement may also exist stand-alone with no parent at all. The relation of ManagedElement IOC and ManagedFunction IOC can be described as following: - A ManaagedElement instance may have 1..1 containment relationship to a ManagedFunction instance. In this case, the ManagedElement IOC may be used to represent a NE with single functionality. For example, a ManagedElement is used to represent the 3GPP defined RNC node; - A ManagedElement instance may have 1..N containment relationship to multiple ManagedFunction IOC instances. In this case, the ManagedElement IOC may be used to represent a NE with combined ManagedFunction funcationality (as indicated by the managedElementType attribute and the contained instances of different ManagedFunction IOCs).For example, a ManagedElement is used to represent the combined functionality of 3GPP defined gNBCUCPFuntion, gNBCUUPFunction and gNBDUFunction"; key id; uses top3gpp:Top_Grp; container attributes { uses ManagedElementGrp; } uses meas3gpp:MeasurementSubtree { if-feature MeasurementsUnderManagedElement; } uses subscr3gpp:SubscriptionControlSubtree { if-feature SubscriptionControlUnderManagedElement; } uses fm3gpp:FmSubtree { if-feature FmUnderManagedElement; } uses trace3gpp:TraceSubtree { if-feature TraceUnderManagedElement; } } }