module o-ran-smo-teiv-equipment {
yang-version 1.1;
namespace "urn:o-ran:smo-teiv-equipment";
prefix or-teiv-equip;
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 ietf-geo-location {
prefix geo;
reference "RFC 9179: A YANG Grouping for Geographic Locations";
}
organization "ORAN";
contact "The Authors";
description
"RAN Equipment topology model.
This model contains the topology entities and relations in the
RAN Equipment domain, which is modelled to understand the physical
location of equipment such as antennas associated with a cell/carrier
and their relevant properties e.g. tilt, max power etc.
Copyright (C) 2024 Ericsson
Modifications Copyright (C) 2024 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 "2024-05-02" {
description "Initial revision.";
or-teiv-yext:label 0.3.0;
}
or-teiv-yext:domain EQUIPMENT;
list AntennaModule {
description "An Antenna Module represents the
physical aspect of an antenna.";
uses or-teiv-types:Top_Grp_Type;
key id;
container attributes {
leaf fdn {
description "This Full Distinguished Name (FDN) identifies
an instance of the AntennaSubUnit MO. It contains
the full path from the Subnetwork to the
AntennaSubUnit.";
type or-teiv-types:_3GPP_FDN_Type;
}
leaf antennaModelNumber {
description "Vendor-specific antenna model
identifier. This attribute is part of
AISG v3 ADB Standard and has
no operational impact.";
type string;
}
leaf mechanicalAntennaBearing {
description "Antenna bearing on antenna subunit
where antenna unit is installed.";
type uint32;
}
leaf mechanicalAntennaTilt {
description "The fixed antenna tilt of the installation,
defined as the inclination of the antenna
element respect to the vertical plane.
It is a signed value. Positive indicates
downtilt, and negative indicates uptilt.";
type uint32;
}
leaf positionWithinSector {
description "Antenna unit position within sector.
This attribute is part of AISG v3 ADB
Standard and has no operational impact.";
type string;
}
leaf totalTilt {
description "Total antenna elevation including the
installed tilt and the tilt applied by
the Remote Electrical Tilt (RET).";
type uint32;
}
leaf electricalAntennaTilt {
description "Electrically-controlled tilt of main beam maximum
with respect to direction orthogonal to antenna
element axis (see 3GPP TS 25.466). Value is signed;
tilt down is positive, tilt up is negative.";
type uint32;
}
leaf-list antennaBeamWidth {
description "The angular span of the main lobe of the antenna radiation
pattern in the horizontal plane. Measured in degrees.";
type uint32;
}
uses geo:geo-location;
container cmId {
uses or-teiv-types:CM_ID;
}
}
}
list Site {
description "A site is a physical location where an Antenna or
Physical NF can be installed.";
uses or-teiv-types:Top_Grp_Type;
key id;
container attributes {
leaf name {
description "Name of Site";
type string;
}
uses geo:geo-location;
container cmId {
uses or-teiv-types:CM_ID;
}
}
}
list PhysicalNF {
description "Represents a Physical NF,
which is used to realise Network Functions.";
uses or-teiv-types:Top_Grp_Type;
key id;
container attributes {
leaf name {
description "Name of Physical NF.";
type string;
}
leaf type {
description "Type of Physical NF.";
type string;
}
uses geo:geo-location;
container cmId {
uses or-teiv-types:CM_ID;
}
}
}
or-teiv-yext:biDirectionalTopologyRelationship ANTENNAMODULE_INSTALLED_AT_SITE { // 0..n to 0..1
uses or-teiv-types:Top_Grp_Type;
key id;
leaf installed-at-site {
description "Antenna Module installed at Site.";
or-teiv-yext:aSide AntennaModule;
type instance-identifier;
}
leaf-list installed-antennaModule {
description "Site where Antenna Module is installed.";
or-teiv-yext:bSide Site;
type instance-identifier;
}
}
or-teiv-yext:biDirectionalTopologyRelationship PHYSICALNF_INSTALLED_AT_SITE { // 1..n to 0..1
uses or-teiv-types:Top_Grp_Type;
key id;
leaf installed-at-site {
description "Physical NF installed at Site.";
or-teiv-yext:aSide PhysicalNF;
type instance-identifier;
}
leaf-list installed-physicalNF {
description "Site where Physical NF is installed.";
or-teiv-yext:bSide Site;
type instance-identifier;
min-elements 1;
}
}
}