module o-ran-smo-teiv-ran {
yang-version 1.1;
namespace "urn:o-ran:smo-teiv-ran";
prefix or-teiv-ran;
import o-ran-smo-teiv-common-yang-types {prefix or-teiv-types; }
import o-ran-smo-teiv-common-yang-extensions {prefix or-teiv-yext; }
import _3gpp-common-yang-types { prefix types3gpp; }
import ietf-geo-location {
prefix geo;
reference "RFC 9179: A YANG Grouping for Geographic Locations";
}
organization "ORAN";
contact "The Authors";
description "RAN Logical topology model.
This model contains the topology entities and relations in the
RAN Logical domain, which represents the functional capability
of the deployed RAN that are relevant to rApps use cases.
Copyright (C) 2024 Ericsson
Modifications Copyright (C) 2024-2025 OpenInfra Foundation Europe
Licensed under the Apache License, Version 2.0 (the \"License\");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an \"AS IS\" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
SPDX-License-Identifier: Apache-2.0";
revision "2025-04-01" {
description "This revision introduces SMO and O1 interface";
or-teiv-yext:label 1.1.3;
}
revision "2025-03-28" {
description "This revision introduces E2 and Open Fronthaul interfaces";
or-teiv-yext:label 1.1.2;
}
revision "2025-03-20" {
description "Proposed entities, relationships and attributes";
or-teiv-yext:label 1.1.1;
}
revision "2025-02-14" {
description "Revision to rename adapter group to origin group.";
or-teiv-yext:label 1.1.0;
reference "O-RAN.WG10.TE&IV-DM.0-R004-v02.00";
}
revision "2024-10-10" {
description "Initial revision.";
or-teiv-yext:label 1.0.0;
reference "O-RAN.WG10.TE&IV-DM.0-R004-v01.00";
}
or-teiv-yext:domain RAN;
list SMO {
description "Service Management and Orchestration (SMO).
A centralized component responsible for the management, orchestration,
and automation of the entire RAN infrastructure. SMO enables flexible,
software-driven network control and is critical for enabling the open,
interoperable, and disaggregated approach that defines O-RAN.
In the O-RAN architecture, the SMO is part of the management and
orchestration layer, sitting above the RAN elements like the RU, DU,
and CU. It communicates with the RAN using open interfaces,
particularly O1 and A1 interfaces";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
container attributes {
leaf smoName {
description "Name of the SMO";
type string;
}
}
}
list ODUFunction {
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
description "O-RAN Distributed Unit (O-DU).
The O-DU is an O-RAN NF in the O-RAN Architecture. An O-DU, combined with
one or more O-RU(s) connected to it, supports and is fully compatible
with the functions of a gNB-DU as defined by 3GPP TS 38.401.
The O-DU terminates the E2 and the F1 interface, and the Open Fronthaul
interface (also known as LLS interface) as well as the RLC, MAC, and
High-PHY functions of the radio interface towards the UE.
Note: O-DU is a concrete class that extends the ORANNetworkFunction
abstract class. In Topology, you can create, read, update, and delete the
O-DU object.
The management characteristics of the O-DU O-RAN NF is represented by the
IOC GNBDUFunction as specified in 3GPP NR NRM model, as per 3GPP TS 28.541";
container attributes {
description "Container for O-RAN Distributed Unit (O-DU) attributes";
leaf gNBDUId {
type int64;
description "Unique identifier for the DU within a gNodeB";
}
leaf gNBId {
type int64;
description "Identity of gNodeB within a PLMN";
}
leaf gNBIdLength {
type int32;
description "Length of gNBId bit string representation";
}
container dUpLMNId {
uses types3gpp:PLMNId;
description "PLMN identifier used as part of PM Events data";
}
}
}
list OCUCPFunction {
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
description "O-RAN Central Unit – Control Plane (O-CU-CP)
The O-CU-CP terminates the NG-c, X2-c, Xn-c, F1-c, and E1 interfaces as
well as the RRC and PDCP (for SRB) protocols towards the UE as defined by
3GPP TS 38.401. The O-CU-CP terminates E2 interface to Near-RT RIC and is
managed via O1 interface by the SMO.
Note: O-CU-CP is a concrete class that extends the ORANNetworkFunction
abstract class. In Topology, you can create, read, update, and delete the
O-CU-CP object.
The management characteristics of the O-CU-CP O-RAN NF is represented by
the IOC GNBCUCPFunction as specified in 3GPP NR NRM model, as per 3GPP TS
28.541";
container attributes {
description "Container for O-RAN Central Unit – Control Plane (O-CU-CP) attributes";
leaf gNBCUName {
type string;
description "Name of gNodeB-CU";
}
leaf gNBId {
type int64;
description "Identity of gNodeB within a PLMN";
}
leaf gNBIdLength {
description "Length of gNBId bit string representation";
type int32;
}
container pLMNId {
uses types3gpp:PLMNId;
description "PLMN identifier to be used as part of global RAN node identity";
}
}
}
list OCUUPFunction {
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
description "O-RAN Centralized Unit User Plane (O-CU-UP)
The O-CU-UP terminates the NG-u, X2-u, Xn-u, F1-u, and E1 interfaces as
well as the PDCP and SDAP protocols towards the UE as defined by 3GPP TS
38.401. The O-CU-UP terminates E2 interface to Near-RT RIC and is managed
via O1 interface by the SMO.
Note: O-CU-UP is a concrete class that extends the ORANNetworkFunction
abstract class. In Topology, you can create, read, update, and delete the
O-CU-UP object.
The management characteristics of the O-CU-UP O-RAN NF is represented by
the IOC GNBCUUPFunction as specified in 3GPP NR NRM model, as per 3GPP TS
28.541";
container attributes {
description "Container for O-RAN Central Unit – User Plane (O-CU-UP) attributes";
leaf gNBId {
type int64;
description "Identity of gNodeB within a PLMN";
}
leaf gNBIdLength {
type int32;
description "Length of gNBId bit string representation";
}
list pLMNIdList {
key "mcc mnc";
description "List of unique identities for PLMN";
uses types3gpp:PLMNId;
}
}
}
list NearRTRICFunction {
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
description "Near-Real-Time RAN Intelligent Controller (Near-RT RIC).
Near-RT RIC is an O-RAN NF that enables near real-time control and
optimization of services and resources of E2 Nodes via fine-grained data
collection and actions over the E2 interface with control loops in the
order of 10 ms-1s.";
container attributes {
description "Container for Near-Real-Time RAN Intelligent Controller (Near-RT RIC) attributes";
container pLMNId {
description "PLMN identifier to be used as part of global RAN node identity";
uses types3gpp:PLMNId;
}
leaf nearRtRicId {
type int64;
description "Identifier of Near-RT RIC";
}
}
}
list ORUFunction {
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
description "O-RAN Radio Unit (O-RU)
The O-RU terminates the Open Fronthaul interface (also known as LLS
interface) as well as Low-PHY functions of the radio interface towards
the UE. This is deployed as a PNF.
The O-RU terminates the Open Fronthaul M-Plane interface towards the O-DU
and SMO.";
container attributes {
description "Container for O-RAN Radio Unit (O-RU) attributes";
leaf oruId {
type int64;
description "Identity of the O-RU as discovered from the source domain based on M-Plane architecture model";
}
}
}
list NRCellCU {
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
description "Represents an NR Cell in gNodeB-CU.
5G NR is a new radio access technology (RAT) developed by 3GPP for
the 5G (fifth generation) mobile network. It is designed to be the
global standard for the air interface of 5G networks.
5G NR has synchronization signal that is known as Primary
Synchronization Signal (PSS) and Secondary Synchronization
Signal (SSS). These signals are specific to NR physical layer and
provide the following information required by UE for downlink
synchronization: PSS provides Radio Frame Boundary (Position of 1st
Symbol in a Radio frame) SSS provides Subframe Boundary (Position of
1st Symbol in a Subframe) Physical Layer Cell ID (PCI) information
using both PSS and SSS.";
container attributes {
leaf cellLocalId {
description "Used together with gNodeB identifier to identify NR
cell in PLMN. Used together with gNBId to form NCI.";
type int32;
}
container plmnId {
description "PLMN ID for NR CGI. If empty,
GNBCUCPFunction::pLMNId is used for PLMN ID in NR CGI";
uses types3gpp:PLMNId;
}
leaf nCI {
description "NR Cell Identity";
type int64;
}
leaf nRTAC {
description "NR Tracking Area Code (TAC)";
type int32;
}
}
}
list NRCellDU {
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
description "Represents an NR Cell in gNodeB-DU.
5G NR is a new radio access technology (RAT) developed by 3GPP for
the 5G (fifth generation) mobile network. It is designed to be the
global standard for the air interface of 5G networks.
5G NR has synchronization signal that is known as Primary
Synchronization signal (PSS) and Secondary Synchronization signal
(SSS). These signals are specific to NR physical layer and provide
the following information required by UE for downlink
synchronization: PSS provides Radio Frame Boundary (Position of 1st
Symbol in a Radio frame) SSS provides Subframe Boundary (Position of
1st Symbol in a Subframe) Physical Layer Cell ID (PCI) information
using both PSS and SSS.";
container attributes {
leaf cellLocalId {
description "Used together with gNodeB identifier to identify NR
cell in PLMN. Used together with gNBId to form NCI.";
type int32;
}
leaf nCI {
description "NR Cell Identity.";
type int64;
}
leaf nRPCI {
description "The Physical Cell Identity (PCI) of the NR cell.";
type int32;
}
leaf nRTAC {
description "NR Tracking Area Code (TAC).";
type int32;
}
}
}
list NRSectorCarrier {
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
description "The NR Sector Carrier object provides the attributes for
defining the logical characteristics of a carrier (cell) in a
sector. A sector is a coverage area associated with a base station
having its own antennas, radio ports, and control channels. The
concept of sectors was developed to improve co-channel interference
in cellular systems, and most wireless systems use three sector
cells.";
container attributes {
leaf arfcnDL {
description "NR Absolute Radio Frequency Channel Number
(NR-ARFCN) for downlink";
type int32;
}
leaf arfcnUL {
description "NR Absolute Radio frequency Channel Number
(NR-ARFCN) for uplink.";
type int32;
}
leaf frequencyDL {
description "RF Reference Frequency of downlink channel";
type int32;
}
leaf frequencyUL {
description "RF Reference Frequency of uplink channel";
type int32;
}
leaf bSChannelBwDL {
description "BS Channel bandwidth in MHz for downlink.";
type int32;
}
}
}
list AntennaCapability {
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
description "This MO serves as a mapping between the cell and the RBS
equipment used to provide coverage in a certain geographical area.
The MO also controls the maximum output power of the sector.";
container attributes {
leaf-list eUtranFqBands {
description "List of LTE frequency bands that associated
hardware supports";
type string;
}
leaf-list geranFqBands {
description "List of GERAN frequency bands that associated
hardware supports";
type string;
}
leaf-list nRFqBands {
description "List of NR frequency bands associated hardware
supports";
type string;
}
}
}
list Sector {
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Entity_Mapping_Grp;
key id;
description "A group of co-located Cells that have a shared
coverage area.";
container attributes {
leaf sectorId {
description "Universally unique ID generated by the sector's
discovery mechanism.";
type uint64;
}
uses geo:geo-location;
leaf azimuth {
description "Average value of the azimuths of the cells
comprising the sector, determined during sector discovery.";
type decimal64{
fraction-digits 1;
range "0..360";
}
units "decimal degrees";
}
}
}
or-teiv-yext:biDirectionalTopologyRelationship ODUFUNCTION_PROVIDES_NRCELLDU { // 1 to 0..n
description
"The aSide of this relationship is an instance of the ODUFunction type.
The bSide of this relationship is an instance of the NRCellDU type.
The ODUFunction represents the DU component of a gNB that provides the NRCellDU.
A ODUFunction instance can provide many NRCellDUs.
An NRCellDU instance must be provided by an ODUFunction.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf-list provided-nrCellDu {
description "O-DU Function provides NR Cell-DU.";
or-teiv-yext:aSide ODUFunction;
type instance-identifier;
}
leaf provided-by-oduFunction {
description "NR Cell-DU provided by O-DU Function.";
or-teiv-yext:bSide NRCellDU;
type instance-identifier;
mandatory true;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ODUFUNCTION_PROVIDES_NRSECTORCARRIER { // 1 to 0..n
description
"The aSide of this relationship is an instance of the ODUFunction type.
The bSide of this relationship is an instance of the NRSectorCarrier type.
The ODUFunction represents the DU component of a gNB that provides the NRSectorCarrier.
A ODUFunction instance can provide many NRSectorCarriers.
An NRSectorCarrier instance must be provided by an ODUFunction.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf-list provided-nrSectorCarrier {
description "O-DU Function provides NR Sector Carrier.";
or-teiv-yext:aSide ODUFunction;
type instance-identifier;
}
leaf provided-by-oduFunction {
description "NR Sector Carrier provided by O-DU Function.";
or-teiv-yext:bSide NRSectorCarrier;
type instance-identifier;
mandatory true;
}
}
or-teiv-yext:biDirectionalTopologyRelationship OCUCPFUNCTION_PROVIDES_NRCELLCU { // 1 to 0..n
description
"The aSide of this relationship is an instance of the OCUCPFunction type.
The bSide of this relationship is an instance of the NRCellCU type.
The OCUCPFunction represents the CU-CP component of a gNB that provides the NRCellCU.
A OCUCPFunction instance can provide many NRCellCU.
An NRCellCU instance must be provided by an OCUCPFunction.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf-list provided-nrCellCu {
description "O-CU-CP Function provides NR Cell-CU.";
or-teiv-yext:aSide OCUCPFunction;
type instance-identifier;
}
leaf provided-by-ocucpFunction {
description "NR Cell-CU provided by O-CU-CP Function.";
or-teiv-yext:bSide NRCellCU;
type instance-identifier;
mandatory true;
}
}
or-teiv-yext:biDirectionalTopologyRelationship NRCELLDU_USES_NRSECTORCARRIER { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the NRCellDU type.
The bSide of this relationship is an instance of the NRSectorCarrier type.
The NRCellDU represents the cell that uses the NRSectorCarrier.
An NRCellDU instance can use many NRSectorCarriers.
An NRSectorCarrier instance can only be used by one NRCellDU.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf-list used-nrSectorCarrier {
description "NR Cell-DU uses NR Sector Carrier.";
or-teiv-yext:aSide NRCellDU;
type instance-identifier;
}
leaf used-by-nrCellDu {
description "NR Sector Carrier used by NR Cell-DU.";
or-teiv-yext:bSide NRSectorCarrier;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship NRSECTORCARRIER_USES_ANTENNACAPABILITY { // 0..n to 0..1
description
"The aSide of this relationship is an instance of the NRSectorCarrier type.
The bSide of this relationship is an instance of the AntennaCapability type.
The NRSectorCarrier represents the carrier that uses the AntennaCapability.
An NRSectorCarrier instance can use only one AntennaCapability.
An AntennaCapability instance can be used by many NRSectorCarriers.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf used-antennaCapability {
description "NR Sector Carrier uses Antenna Capability.";
or-teiv-yext:aSide NRSectorCarrier;
type instance-identifier;
}
leaf-list used-by-nrSectorCarrier {
description "Antenna Capability used by NR Sector Carrier.";
or-teiv-yext:bSide AntennaCapability;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship SECTOR_GROUPS_NRCELLDU { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the Sector type.
The bSide of this relationship is an instance of the NRCellDU type.
The Sector represents the geographical area that groups the NRCellDUs.
A Sector instance can group many NRCellDUs.
An NRCellDU instance can only be grouped by one Sector.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf-list grouped-nrCellDu {
description "Sector groups NR Cell-DU.";
or-teiv-yext:aSide Sector;
type instance-identifier;
}
leaf grouped-by-sector {
description "NR Cell-DU grouped by Sector.";
or-teiv-yext:bSide NRCellDU;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ODUFUNCTION_E2LINK_NEARRTRICFUNCTION { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the ODUFunction type.
The bSide of this relationship is an instance of the NearRTRICFunction type.
The relationships defines an E2 link between the
aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf oduFunction-e2-linked-nearRTRICFunction {
description "O-DU Function links Near RT RIC Function.";
or-teiv-yext:aSide or-teiv-ran:ODUFunction;
type instance-identifier;
}
leaf-list nearRTRICFunction-e2-linked-by-oduFunction {
description "Near RT RIC Function linked by O-DU Function.";
or-teiv-yext:bSide or-teiv-ran:NearRTRICFunction;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ORUFUNCTION_OFHMLINK_SMO { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the ORUFunction type.
The bSide of this relationship is an instance of the SMO type.
The relationships defines an Open FH (Fronthaul) M-Plane Interface between the
aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf oruFunction-ofhm-linked-smo {
description "O-RU Function links SMO.";
or-teiv-yext:aSide or-teiv-ran:ORUFunction;
type instance-identifier;
}
leaf-list smo-ofhm-linked-by-oruFunction {
description "SMO linked by O-RU Function.";
or-teiv-yext:bSide or-teiv-ran:SMO;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ORUFUNCTION_OFHMLINK_ODUFUNCTION { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the ORUFunction type.
The bSide of this relationship is an instance of the ODUFunction type.
The relationships defines an Open FH (Fronthaul) M-Plane Interface between
the aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf oruFunction-ofhm-linked-oduFunction {
description "O-RU Function links O-DU Function.";
or-teiv-yext:aSide or-teiv-ran:ORUFunction;
type instance-identifier;
}
leaf-list oduFunction-ofhm-linked-by-oruFunction {
description "O-DU Function linked by O-RU Function.";
or-teiv-yext:bSide or-teiv-ran:ODUFunction;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ORUFUNCTION_OFHCLINK_ODUFUNCTION { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the ORUFunction type.
The bSide of this relationship is an instance of the ODUFunction type.
The relationships defines an Open FH (Fronthaul) Control Interface between
the aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf oruFunction-ofhc-linked-oduFunction {
description "O-RU Function links O-DU Function.";
or-teiv-yext:aSide or-teiv-ran:ORUFunction;
type instance-identifier;
}
leaf-list oduFunction-ofhc-linked-by-oruFunction {
description "O-DU Function linked by O-RU Function.";
or-teiv-yext:bSide or-teiv-ran:ODUFunction;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ORUFUNCTION_OFHULINK_ODUFUNCTION { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the ORUFunction type.
The bSide of this relationship is an instance of the ODUFunction type.
The relationships defines an Open FH (Fronthaul) User Interface between
the aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf oruFunction-ofhu-linked-oduFunction {
description "O-RU Function links O-DU Function.";
or-teiv-yext:aSide or-teiv-ran:ORUFunction;
type instance-identifier;
}
leaf-list oduFunction-ofhu-linked-by-oruFunction {
description "O-DU Function linked by O-RU Function.";
or-teiv-yext:bSide or-teiv-ran:ODUFunction;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ORUFUNCTION_OFHSLINK_ODUFUNCTION { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the ORUFunction type.
The bSide of this relationship is an instance of the ODUFunction type.
The relationships defines an Open FH (Fronthaul) Synchronization Interface
between the aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf oruFunction-ofhs-linked-oduFunction {
description "O-RU Function links O-DU Function.";
or-teiv-yext:aSide or-teiv-ran:ORUFunction;
type instance-identifier;
}
leaf-list oduFunction-ofhs-linked-by-oruFunction {
description "O-DU Function linked by O-RU Function.";
or-teiv-yext:bSide or-teiv-ran:ODUFunction;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ODUFUNCTION_O1LINK_SMO { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the ODUFunction type.
The bSide of this relationship is an instance of the SMO type.
The relationships defines an O1 Interface between the aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf oduFunction-o1-linked-smo {
description "O-DU Function links SMO.";
or-teiv-yext:aSide or-teiv-ran:ODUFunction;
type instance-identifier;
}
leaf-list smo-o1-linked-by-oduFunction {
description "SMO linked by O-DU Function.";
or-teiv-yext:bSide or-teiv-ran:SMO;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship OCUCPFUNCTION_O1LINK_SMO { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the OCUCPFunction type.
The bSide of this relationship is an instance of the SMO type.
The relationships defines an O1 Interface between the aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf ocucpFunction-o1-linked-smo {
description "O-CU-CP Function links SMO.";
or-teiv-yext:aSide or-teiv-ran:OCUCPFunction;
type instance-identifier;
}
leaf-list smo-o1-linked-by-ocucpFunction {
description "SMO linked by Near O-CU-CP Function.";
or-teiv-yext:bSide or-teiv-ran:SMO;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ORUFUNCTION_O1LINK_SMO { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the ORUFunction type.
The bSide of this relationship is an instance of the SMO type.
The relationships defines an O1 Interface between the aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf oruFunction-o1-linked-smo {
description "O-RU Function links SMO.";
or-teiv-yext:aSide or-teiv-ran:ORUFunction;
type instance-identifier;
}
leaf-list smo-o1-linked-by-oruFunction {
description "SMO links O-RU Function.";
or-teiv-yext:bSide or-teiv-ran:SMO;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship NEARRTRICFUNCTION_O1LINK_SMO { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the NearRTRICFunction type.
The bSide of this relationship is an instance of the SMO type.
The relationships defines an O1 Interface between the aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf nearRTRICFunction-o1-linked-smo {
description "Near RT RIC Function links SMO.";
or-teiv-yext:aSide or-teiv-ran:NearRTRICFunction;
type instance-identifier;
}
leaf-list smo-o1-linked-by-nearRTRICFunction {
description "SMO linked by Near RT RIC Function.";
or-teiv-yext:bSide or-teiv-ran:SMO;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ODUFUNCTION_F1ULINK_OCUUPFUNCTION { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the ODUFUNCTION type.
The bSide of this relationship is an instance of the OCUUPFUNCTION type.
The relationships defines an F1-u Interface between the aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf oduFunction-f1-u-linked-ocuupFunction {
description "O-DU Function links O-CU-UP Function.";
or-teiv-yext:aSide or-teiv-ran:ODUFunction;
type instance-identifier;
}
leaf-list ocuupFunction-f1-u-linked-by-oduFunction {
description "O-CU-UP Function linked by O-DU Function.";
or-teiv-yext:bSide or-teiv-ran:OCUUPFunction;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship ODUFUNCTION_F1CLINK_OCUCPFUNCTION { // 0..1 to 0..n
description
"The aSide of this relationship is an instance of the ODUFUNCTION type.
The bSide of this relationship is an instance of the OCUCPFUNCTION type.
The relationships defines an F1-c Interface between the aSide and bSide.
";
uses or-teiv-types:Top_Grp_Type;
uses or-teiv-types:Origin_Relationship_Mapping_Grp;
key id;
leaf oduFunction-f1-c-linked-ocucpFunction {
description "O-DU Function links O-CU-CP Function.";
or-teiv-yext:aSide or-teiv-ran:ODUFunction;
type instance-identifier;
}
leaf-list ocucpFunction-f1-c-linked-by-oduFunction {
description "O-CU-UP Function linked by O-DU Function.";
or-teiv-yext:bSide or-teiv-ran:OCUCPFunction;
type instance-identifier;
}
}
}