Description
A Declarative Object (DO) is a fundamental concept in 3GPP specifications related to Universal Subscriber Identity Module (USIM) applications and the UICC platform. Defined in specifications such as TS 31.102 (USIM characteristics) and TS 26.953 (IMS Multimedia Telephony service), a DO is a structured data object that uses a declarative language to describe the behavior, configuration, or presentation of a service. Unlike procedural objects that specify step-by-step instructions, a DO declares 'what' should be achieved, leaving the 'how' to the interpreting entity (e.g., the USIM or terminal). DOs are typically constructed using a tag-length-value (TLV) encoding scheme, where tags identify the type of object, length indicates the size of the value field, and value contains the actual declarative data. They are used to define elements like menu entries, call control rules, service parameters, or security policies within the USIM application. For instance, a DO can describe a menu structure for value-added services, allowing the mobile terminal to render a user interface directly from the USIM data. The USIM file system (EF, DF) often contains files comprised of one or more DOs. The terminal reads these DOs, interprets their meaning based on standardized tags, and executes the corresponding actions. This mechanism enables service personalization and network-driven updates, as operators can modify DOs via Over-The-Air (OTA) provisioning to change service behavior without replacing the physical SIM card. DOs are essential for enabling standardized, interoperable value-added services across different handset manufacturers and network operators.
Purpose & Motivation
Declarative Objects were introduced to overcome the limitations of hard-coded, procedural service logic on SIM/USIM cards, which made service deployment and updates cumbersome and inflexible. Prior to DOs, adding or modifying a service often required issuing new physical SIM cards or using proprietary, non-interoperable methods. The primary motivation was to create a standardized, flexible mechanism for describing and provisioning services on the UICC in a way that is independent of the terminal's implementation details. DOs enable a clear separation between service description (on the USIM) and service execution (on the terminal), promoting interoperability. This declarative approach allows network operators to dynamically configure services, such as multimedia telephony settings, address book structures, or service menus, via OTA updates. It simplifies the introduction of new services, reduces time-to-market, and enhances the user experience by allowing personalized service configurations. DOs are a cornerstone of the SIM Application Toolkit (SAT) and USIM Application Toolkit (USAT) ecosystems, enabling a wide range of value-added services from basic call control to advanced IMS-based applications.
Key Features
- Uses declarative language to describe service behavior and configuration, not procedural steps
- Encoded in standardized Tag-Length-Value (TLV) format for compact representation and parsing
- Stored within the USIM file system (e.g., in Elementary Files) for persistent service definition
- Enables dynamic service provisioning and updates via Over-The-Air (OTA) mechanisms
- Facilitates interoperability between USIM applications and mobile terminals from different vendors
- Supports a wide range of applications including menu structures, call control, and IMS service parameters
Evolution Across Releases
Introduced the concept of Declarative Objects for USIM applications, primarily within TS 31.102. They provided a standardized, declarative method to describe service menus and configurations on the UICC, enabling dynamic service provisioning and reducing dependency on terminal-specific procedural code.
Defining Specifications
| Specification | Title |
|---|---|
| TS 21.905 | 3GPP TS 21.905 |
| TS 26.953 | 3GPP TS 26.953 |
| TS 31.102 | 3GPP TR 31.102 |