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.
Classification
Detected Changes Across Releases
from 3GPP Change RequestsSpecific changes extracted from the „Change history“ tables of 3GPP specifications (21 CRs across 4 releases). Complements the general historical overview above with the evidence-based evolution of this function.
In Release 15, the IDL function was updated to support new architectural capabilities, including the addition of EPC CUPS for the CORBA solution set and updates to state management data definitions to support JSON. Furthermore, solution set definitions were enhanced with new attributes like `peeParametersList`, and definitions were corrected and updated to support the management of ng-eNBs and interworking scenarios such as EN-DC and 4G/5G.
- Addition of 5G in the definition of 3GPP system TS 21.905CR0116
- Add attribute peeParametersList to solution set definitions TS 28.659CR0022
- Update E-UTRAN SS definitions to support ng-eNB management TS 28.659CR0025
- Add EPC CUPS for CORBA SS TS 28.709CR0007
- Add EPC CUPS for CORBA solution set TS 28.709CR0008
- Update EPC SS definitions to support management of EN-DC and 4G/5G interworking TS 28.709CR0010
+ 8 more changes
In Release 16, the new development for the Interface Definition Language (IDL) function was the addition of a missing stage 3 CORBA/IDL solution. This specifically addressed the mapping of an IRP Information Service to the CORBA/IDL technology as part of an IRP Solution Set. The enhancement provided a complete technical specification for this standardized integration technology.
- Add missing stage 3 CORBA/IDL solution TS 28.659CR0038
In Release 17, the IDL function updates included aligning the definition for the UICC, correcting the IMC definition for terminals accessing IMS via an SNPN, and implementing non-inclusive language corrections within the terminology specifications. These changes ensured precise vocabulary and consistent use of technical terms, such as those for the Application Interface and IP-Connectivity Access Network, across 3GPP documentation. The revisions served to maintain the document's role as a tool for facilitating understanding and further technical work.
In Release 18, the IDL function was updated to include NRM (Network Resource Model) solution set definitions for IOT-NTN (Internet of Things - Non-Terrestrial Networks) management. Furthermore, corrections and enhancements were made to specific attribute definitions and to sector equipment and antenna function definitions within the IRP Information Model framework. These changes ensure the precise modeling of new network capabilities and the consistent use of terminology across 3GPP documentation.
Explore further
Broader topics and technologies where IDL plays a role.
Defining Specifications
3GPP specifications that define or reference IDL, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TR 21.905 vj00 | 3GPP Technical Terms and Definitions | Rel-19 |
| TS 23.127 v1600 | Virtual Home Environment Stage 2 Specification | Rel-6 |
| TS 23.722 vf10 | Common API Framework (CAPIF) for 3GPP Northbound APIs | Rel-15 |
| TS 26.347 vj00 | MBMS Transport Protocol and API (TRAPI) | Rel-19 |
| TR 26.857 vi00 | Technical Report on Media Service Enablers | Rel-18 |
| TS 28.606 vc10 | CN and non-3GPP interworking NRM IRP Solution Sets | Rel-12 |
| TS 28.616 vj00 | EPC and non-3GPP access NRM IRP SS definitions | Rel-19 |
| TS 28.626 vj00 | State Management Data Definition IRP Solution Set | Rel-19 |
| TS 28.629 vj00 | SON Policy NRM IRP Solution Set Definitions | Rel-19 |
| TS 28.653 vj00 | UTRAN NRM IRP Solution Set Definition | Rel-19 |
| TS 28.656 vj00 | GERAN NRM IRP Solution Set Definitions | Rel-19 |
| TS 28.659 vj00 | E-UTRAN NRM IRP Solution Set Definitions | Rel-19 |
| TS 28.663 vj00 | Generic RAN NRM IRP Solution Set Definitions | Rel-19 |
| TS 28.673 vj00 | HNS NRM IRP Solution Set Definitions | Rel-19 |
| TS 28.676 vj00 | HeNS NRM IRP Solution Set Definitions | Rel-19 |
| TS 28.702 vj00 | Core Network NRM IRP Information Service | Rel-19 |
| TS 28.703 vj00 | Core Network NRM IRP Solution Set Definitions | Rel-19 |
| TS 28.706 vj00 | IMS NRM IRP Solution Set definitions | Rel-19 |
| TS 28.709 vj00 | EPC NRM IRP Solution Set Definitions | Rel-19 |
| TS 28.733 vj00 | TN NRM IRP Solution Set Definitions | Rel-19 |
| TS 28.736 vj00 | STN Interface NRM IRP Solution Set Definitions | Rel-19 |
| TS 29.198 v1900 | OSA API Overview Specification | Rel-9 |
| TS 29.890 vg00 | CT3 5G System Technical Report | Rel-16 |
| TS 32.101 vj00 | Management principles and high-level requirements | Rel-19 |
| TS 32.102 vj00 | Telecom Management Physical Architecture Framework | Rel-19 |
| TS 32.111 vj00 | Fault Management Requirements | Rel-19 |
| TS 32.150 vj00 | IRP Concept and Definitions | Rel-19 |
| TS 32.153 vj00 | IRP Technology-Specific Templates Specification | Rel-19 |
| TS 32.303 v900 | Notification IRP CORBA Solution Set | Rel-9 |
| TS 32.306 vj00 | Configuration Management Notification IRP Solution Set | Rel-19 |
| TS 32.313 v900 | Generic IRP CORBA Solution Set | Rel-9 |
| TS 32.316 vj00 | Generic IRP Management Solution Set Definitions | Rel-19 |
| TS 32.323 v900 | Test Management IRP CORBA SS | Rel-9 |
| TS 32.326 vj00 | Test Management IRP Solution Set Definitions | Rel-19 |
| TS 32.333 v900 | Notification Log IRP CORBA Solution Set | Rel-9 |
| TS 32.336 vj00 | Notification Log IRP Solution Set Definitions | Rel-19 |
| TS 32.343 v1900 | File Transfer IRP CORBA Solution Set | Rel-9 |
| TS 32.346 vj00 | File Transfer IRP Solution Set Definitions | Rel-19 |
| TS 32.373 v1900 | IRP Security Services CORBA Solution | Rel-9 |
| TS 32.376 vj00 | Security services for IRP Solution Set | Rel-19 |
| TS 32.413 v900 | PM IRP: CORBA Solution Set (SS) | Rel-9 |
| TS 32.416 vj00 | PM IRP Solution Set Definitions | Rel-19 |
| TS 32.443 v910 | Trace Management IRP CORBA Solution Set | Rel-9 |
| TS 32.446 vj00 | Trace Management IRP Solution Set Definitions | Rel-19 |
| TS 32.523 v930 | SON Policy NRM IRP CORBA Solution Set | Rel-9 |
| TS 32.526 vb70 | SON Policy NRM IRP Solution Set definitions | Rel-11 |
| TS 32.602 vj00 | Basic Configuration Management IRP Information Service | Rel-19 |
| TS 32.603 v910 | Basic CM IRP CORBA Solution Set | Rel-9 |
| TS 32.606 vj00 | Basic CM IRP Solution Set for CORBA/SOAP | Rel-19 |
| TS 32.613 v1910 | Bulk CM IRP CORBA Solution Set | Rel-9 |
| TS 32.616 vj00 | Bulk CM IRP Solution Set Definitions | Rel-19 |
| TS 32.623 v900 | Generic NRM CORBA Solution Set | Rel-9 |
| TS 32.626 vb20 | Generic Network Resources IRP Solution Set Definitions | Rel-11 |
| TS 32.632 vb00 | Core Network Resources IRP: Network Resource Model | Rel-11 |
| TS 32.633 v1920 | Core Network Resources IRP CORBA Mapping | Rel-9 |
| TS 32.636 vb00 | CM Core Network Resources IRP Solution Set | Rel-11 |
| TS 32.643 v930 | UTRAN Network Resources IRP: CORBA Solution Set | Rel-9 |
| TS 32.646 vc00 | UTRAN NRM IRP Solution Set Definitions | Rel-12 |
| TS 32.653 v920 | GERAN Network Resources IRP CORBA Solution Set | Rel-9 |
| TS 32.656 vc00 | GERAN NRM IRP Solution Set Definitions | Rel-12 |
| TS 32.662 vj00 | Configuration Management (CM); Kernel CM IRP | Rel-19 |
| TS 32.663 v1900 | Kernel CM IRP CORBA Mapping | Rel-9 |
| TS 32.666 vj00 | Kernel CM IRP Solution Set Definitions | Rel-19 |
| TS 32.673 v900 | State Management IRP CORBA Solution Set | Rel-9 |
| TS 32.676 vc00 | 3GPP TS 32.676: State Management IRP Solution Set | Rel-12 |
| TS 32.713 v900 | TN Interface NRM IRP: CORBA Solution Set | Rel-9 |
| TS 32.716 vb00 | TN NRM IRP Solution Set Definitions | Rel-11 |
| TS 32.723 v900 | Repeater NRM CORBA Solution Set | Rel-9 |
| TS 32.726 vb00 | Repeater NRM IRP Solution Set Definitions | Rel-11 |
| TS 32.732 vb00 | IMS Network Resource Model IRP: Information Service | Rel-11 |
| TS 32.733 v910 | IMS NRM IRP CORBA Solution Set | Rel-9 |
| TS 32.736 vb00 | IMS NRM IRP Solution Set Definitions | Rel-11 |
| TS 32.743 v1900 | CORBA Solution Set for STN IRP | Rel-9 |
| TS 32.746 vb00 | STN NRM IRP Solution Set Definitions | Rel-11 |
| TS 32.753 v920 | EPC NRM IRP CORBA Solution Set | Rel-9 |
| TS 32.756 vb00 | EPC NRM IRP Solution Set Definitions | Rel-11 |
| TS 32.763 v1950 | E-UTRAN NRM IRP CORBA Solution Set | Rel-9 |
| TS 32.766 vb90 | E-UTRAN NRM IRP Solution Set Definitions | Rel-11 |
| TS 32.773 v900 | HNS NRM IRP CORBA Solution Set | Rel-9 |
| TS 32.776 vb00 | HNS NRM IRP Solution Set Definitions | Rel-11 |
| TS 32.783 v1900 | HeNS NRM IRP CORBA Solution Set | Rel-9 |
| TS 32.786 vb00 | 3GPP TS 32.786: HeNS NRM IRP Solution Set | Rel-11 |
| TS 32.796 vc00 | Generic RAN NRM IRP Solution Set Definitions | Rel-12 |