Menu
Latest
12 meetings · Prague, Jeju · 12–16 Oct
Reports
RAN1#126-bis · SA2#177

Glossary term · Other

IDL

Interface Definition Language

Other →

IDL is a language-neutral syntax used in 3GPP specifications to formally define the interfaces and data structures of network functions, enabling unambiguous API specification and interoperability.

Introduced
R99
Where
Management
Specifications
83 specs
IDL Description Purpose What changed Neighbours Detected Changes Specifications

Description

Within 3GPP specifications, the term IDL refers to the use of an Interface Definition Language, predominantly based on the standard defined by the Object Management Group (OMG), to specify the Application Programming Interfaces (APIs) and data models for various network interfaces. An IDL provides a language-independent way to describe interfaces, operations, parameters, data types, and exceptions. In 3GPP, it is extensively used in the specification of Operation and Maintenance (O&M) interfaces, particularly those based on the Common Object Request Broker Architecture (CORBA) in earlier releases, and later for defining XML-based interfaces and structured data models.

The primary role of IDL in 3GPP is to achieve precision and avoid ambiguity in interface definitions. Instead of describing interfaces solely in prose, which can be interpreted differently, the IDL provides a formal, machine-readable definition. For example, an IDL file defines modules (namespaces), interfaces (which are akin to classes or service contracts), and within them, operations (methods) with their precise input and output parameter types. It also defines complex structured data types (structs, sequences, arrays) and enumerated types used in these operations. This formal description serves as the single source of truth for both the written standard and for the automated generation of software artifacts.

From an architectural perspective, the use of IDL decouples the interface specification from its implementation. Network equipment vendors and software developers can take the standardized IDL files and use IDL compilers to generate skeleton code (stubs and skeletons) in their programming language of choice (e.g., C++, Java). This ensures that different implementations correctly adhere to the same data formats and remote procedure call (RPC) semantics, which is critical for interoperability in multi-vendor telecom networks. In 3GPP, IDL is heavily referenced in the 32-series specifications (Telecommunication management), such as those defining the Itf-N (Integration Reference Point) between the Network Manager (NM) and Element Manager (EM), or the management interfaces for Network Functions.

While CORBA IDL was prevalent in 3G and early 4G management interfaces, the principles of IDL have carried forward. Modern 3GPP management interfaces, such as those for the 5G Core Network's Service-Based Architecture (SBA), often use OpenAPI Specification (OAS) or YANG data modeling languages, which serve a similar purpose—formally defining RESTful APIs or configuration data models in a machine-readable way. The underlying concept remains: a formal, abstract language to define contracts between system components, enabling tool-based development, validation, and testing.

Purpose & Motivation

The adoption of an Interface Definition Language within 3GPP was motivated by the critical need for interoperability in complex, multi-vendor telecommunications networks. In the early days of 3G, network management interfaces were often described informally, leading to different interpretations by equipment manufacturers. This resulted in costly integration projects, proprietary extensions, and fragile systems. A formal IDL provides an unambiguous contract, reducing integration time and errors.

Historically, the choice of OMG IDL was closely tied to the adoption of CORBA as a distributed object middleware for management interfaces. CORBA provided a platform and language-independent framework for remote operations, and its accompanying IDL was the natural choice for defining the object interfaces. This allowed a Network Manager from one vendor to communicate with an Element Manager or Network Function from another vendor using a standardized object-oriented paradigm. The IDL definitions covered everything from fault management and performance management to configuration management interfaces.

The problem IDL solves is essentially one of specification clarity and automation. Manually writing and maintaining code that conforms to a textual specification is error-prone. An IDL allows for the automatic generation of consistent client and server-side code bindings, data marshalling/unmarshalling routines, and documentation. This shifts the focus from implementation details to the design of the interface itself. As 3GPP architectures evolved towards web-based protocols (HTTP/2, REST), the specific syntax shifted from OMG IDL to YANG and OpenAPI, but the core purpose—providing a formal, machine-processable interface definition—remains a cornerstone of achieving reliable, scalable, and interoperable network software.

What changed in its specifications

The latest release-to-release comparison of specifications that define IDL. Each summary describes the whole specification, not only this term.

TR 21.905Rel-17 → Rel-18

Rel-18 brings only minor changes to TS 21.905: 0 clauses changed, with no change attributed to a release feature.

Full comparison in TR 21.905 →
TS 23.127Rel-4 → Rel-5

Rel-5 added IMS provisioning with new network element definitions (HSS, IMS, ISC, MRF). It also added OSA enhancements covering HE-VASP support, policy management, presence, and removing User Profile Management.

Full comparison in TS 23.127 →

Release Timeline

Detected Changes Across Releases

from 3GPP Change Requests

Specific changes extracted from the „Change history“ tables of 3GPP specifications (2 CRs across 2 releases). Complements the general historical overview above with the evidence-based evolution of this function.

Rel-15 1 change
Rel-16 1 change
  • Add missing stage 3 CORBA/IDL solution TS 28.659CR0038

Defining Specifications

3GPP specifications that define or reference IDL, with the latest known release. Sourced from the 3GPP document catalog — see methodology.

SpecificationTitleRelease
TR 21.905 vj20 3GPP Terminology and Definitions Rel-19 read
TS 23.127 v610 Virtual Home Environment Stage 2 Specification Rel-6 read
TS 23.722 vf10 Common API Framework (CAPIF) for 3GPP Northbound APIs Rel-15 read
TS 26.347 vj00 MBMS Transport Protocol and API (TRAPI) Rel-19 read
TR 26.857 vi00 Technical Report on Media Service Enablers Rel-18 read
TS 28.606 vc10 CN and non-3GPP interworking NRM IRP Solution Sets Rel-12 read
TS 28.616 vj00 EPC and non-3GPP access NRM IRP SS definitions Rel-19 read
TS 28.626 vj00 State Management Data Definition IRP Solution Set Rel-19 read
TS 28.629 vj00 SON Policy NRM IRP Solution Set Definitions Rel-19 read
TS 28.653 vj00 UTRAN NRM IRP Solution Set Definition Rel-19 read
TS 28.656 vj00 GERAN NRM IRP Solution Set Definitions Rel-19 read
TS 28.659 vk00 E-UTRAN NRM Solution Set Definitions Rel-20 read
TS 28.663 vj10 Generic RAN NRM IRP Solution Set definitions Rel-19 read
TS 28.673 vj00 HNS NRM IRP Solution Set Definitions Rel-19 read
TS 28.676 vj00 HeNS NRM IRP Solution Set Definitions Rel-19 read
TS 28.702 vj00 Core Network NRM IRP Information Service Rel-19 read
TS 28.703 vj00 Core Network NRM IRP Solution Set Definitions Rel-19 read
TS 28.706 vj00 IMS NRM IRP Solution Set definitions Rel-19 read
TS 28.709 vj00 EPC NRM IRP Solution Set Definitions Rel-19 read
TS 28.733 vj00 TN NRM IRP Solution Set Definitions Rel-19 read
TS 28.736 vj00 STN Interface NRM IRP Solution Set Definitions Rel-19 read
TS 29.198 v340 OSA R99 API Stage 3 Specification R99 read
TS 29.890 vg00 CT3 5G System Technical Report Rel-16 read
TS 32.101 vj00 PLMN Management Principles and Requirements Rel-19 read
TS 32.102 vj00 Telecom Management Physical Architecture Framework Rel-19 read
TS 32.111 vj00 Fault Management Alarm IRP Solution Sets Rel-19 read
TS 32.150 vj00 IRP Concept and Definitions Rel-19 read
TS 32.153 vj00 IRP Technology-Specific Templates Specification Rel-19 read
TS 32.303 v900 Notification IRP CORBA Solution Set Rel-9 read
TS 32.306 vj00 Configuration Management Notification IRP Solution Set Rel-19 read
TS 32.313 v900 Generic IRP CORBA Solution Set Rel-9 read
TS 32.316 vj00 Generic IRP Management Solution Set Definitions Rel-19 read
TS 32.323 v900 Test Management IRP CORBA SS Rel-9 read
TS 32.326 vj00 Test Management IRP Solution Set Definitions Rel-19 read
TS 32.333 v900 Notification Log IRP CORBA Solution Set Rel-9 read
TS 32.336 vj00 Notification Log IRP Solution Set Definitions Rel-19 read
TS 32.343 v900 File Transfer IRP CORBA Solution Set Rel-9 read
TS 32.346 vj00 File Transfer IRP Solution Set Definitions Rel-19 read
TS 32.373 v900 Security Services for IRP CORBA Solution Rel-9 read
TS 32.376 vj00 Security services for IRP Solution Set Rel-19 read
TS 32.413 v900 PM IRP: CORBA Solution Set (SS) Rel-9 read
TS 32.416 vj00 PM IRP Solution Set Definitions Rel-19 read
TS 32.443 v910 Trace Management IRP CORBA Solution Set Rel-9 read
TS 32.446 vj00 Trace Management IRP Solution Set Definitions Rel-19 read
TS 32.523 v930 SON Policy NRM IRP CORBA Solution Set Rel-9 read
TS 32.526 vb70 SON Policy NRM IRP Solution Set definitions Rel-11 read
TS 32.602 vj00 Basic Configuration Management IRP Information Service Rel-19 read
TS 32.603 v910 Basic CM IRP CORBA Solution Set Rel-9 read
TS 32.606 vj00 Basic CM IRP Solution Set for CORBA/SOAP Rel-19 read
TS 32.613 v910 Bulk CM IRP CORBA Solution Set Rel-9 read
TS 32.616 vj00 Bulk CM IRP Solution Set Definitions Rel-19 read
TS 32.623 v900 Generic NRM CORBA Solution Set Rel-9 read
TS 32.626 vb20 Generic Network Resources IRP Solution Set Definitions Rel-11 read
TS 32.632 vb00 Core Network Resources IRP: Network Resource Model Rel-11 read
TS 32.633 v920 Core Network Resources IRP CORBA Solution Set Rel-9 read
TS 32.636 vb00 CM Core Network Resources IRP Solution Set Rel-11 read
TS 32.643 v930 UTRAN Network Resources IRP: CORBA Solution Set Rel-9 read
TS 32.646 vc00 UTRAN NRM IRP Solution Set Definitions Rel-12 read
TS 32.653 v920 GERAN Network Resources IRP CORBA Solution Set Rel-9 read
TS 32.656 vc00 GERAN NRM IRP Solution Set Definitions Rel-12 read
TS 32.662 vj00 Configuration Management (CM); Kernel CM IRP Rel-19 read
TS 32.663 v900 Kernel CM IRP CORBA SS Rel-9 read
TS 32.666 vj00 Kernel CM IRP Solution Set Definitions Rel-19 read
TS 32.673 v900 State Management IRP CORBA Solution Set Rel-9 read
TS 32.676 vc00 3GPP TS 32.676: State Management IRP Solution Set Rel-12 read
TS 32.713 v900 TN Interface NRM IRP: CORBA Solution Set Rel-9 read
TS 32.716 vb00 TN NRM IRP Solution Set Definitions Rel-11 read
TS 32.723 v900 Repeater NRM CORBA Solution Set Rel-9 read
TS 32.726 vb00 Repeater NRM IRP Solution Set Definitions Rel-11 read
TS 32.732 vb00 IMS Network Resource Model IRP: Information Service Rel-11 read
TS 32.733 v910 IMS NRM IRP CORBA Solution Set Rel-9 read
TS 32.736 vb00 IMS NRM IRP Solution Set Definitions Rel-11 read
TS 32.743 v900 STN NRM IRP CORBA Solution Set Rel-9 read
TS 32.746 vb00 STN NRM IRP Solution Set Definitions Rel-11 read
TS 32.753 v920 EPC NRM IRP CORBA Solution Set Rel-9 read
TS 32.756 vb00 EPC NRM IRP Solution Set Definitions Rel-11 read
TS 32.763 v950 E-UTRAN NRM IRP CORBA Solution Set Rel-9 read
TS 32.766 vb90 E-UTRAN NRM IRP Solution Set Definitions Rel-11 read
TS 32.773 v900 HNS NRM IRP CORBA Solution Set Rel-9 read
TS 32.776 vb00 HNS NRM IRP Solution Set Definitions Rel-11 read
TS 32.783 v900 HeNS NRM IRP CORBA Solution Set Rel-9 read
TS 32.786 vb00 3GPP TS 32.786: HeNS NRM IRP Solution Set Rel-11 read
TS 32.796 vc00 Generic RAN NRM IRP Solution Set Definitions Rel-12 read