5.1 Standard Data types
29.198-023GPPOpen Service Access (OSA) Application Programming Interface (API)Part 2: Common data definitionsRelease 9TS
The APIs assume that the following Data types can be supported.
5.1.1 TpBoolean
Defines a Boolean data type.
5.1.2 TpInt32
Defines a signed 32-bit integer.
5.1.3 TpFloat
Defines a single precision real number.
5.1.4 TpLongString
Defines a Byte string, comprising length and data. The length shall be at least a 32-bit integer.
5.1.5 TpOctet
Defines an 8-bit quantity that is not translated during transmission.
5.1.6 TpOctetSet
Defines a Numbered List of Data elements of TpOctet. Note that this is an ordered list.
5.1.7 TpString
Defines a Byte string, comprising length and data. The length shall be at least a 16-bit integer.
5.1.8 TpAssignmentID
Defines an assignment ID with a value that is unique to an instance of an implementation of a given interface (i.e. an object), irrespective of the method invoked on it. This ID may be used, for example, to identify single or multiple event notifications enabled by an object; or by a requesting object to modify or stop functionality ( e.g. event notifications, call load control) associated with a previously supplied assignment ID.
The assignment ID is identical to a TpInt32 type.
5.1.9 TpSessionID
Defines a session ID with a value that is at least unique within the context of a specific instance of an SCF. An instance of an SCF is a single service manager instance plus the associated subordinate instances. For example, a single MultiPartyCallControlManager instance plus all associated MultiPartyCall and MultiPartyCallLeg instances. The session ID is used to identify different sessions (e.g. different call or call leg sessions) of an interface capable of handling multiple sessions.
Example 1, myCallObject may implement the IpCall interface. If so, myCallObject may handle multiple call sessions, and each call session will be identified by a call session ID value (e.g. 1, 2, 3) that is unique within the context of the SCF instance.
Example 2, myCallAndCallLegObject may implement the IpCall and IpCallLeg interfaces. If so, myCallAndCallLegObject may handle multiple call sessions and multiple call leg sessions. Each call session will be identified by a call session ID value (e.g. 1, 2, 3) that is unique within the context of the SCF instance. Similarly, each call leg session will be identified by a call leg session ID value (e.g. 1, 2, 3, 4, 5, 6) that is also unique within the context of the SCF instance. Because call session IDs and call leg session IDs are different data types, overlapping values are permitted and their uniqueness still remains.
The session ID is identical to a TpInt32 type.
5.1.10 TpSessionIDSet
Defines a Numbered Set of Data Elements of TpSessionID.
5.1.11 TpAny
Defines a type that can hold any type. This is not restricted to only the primitive types.
5.1.12 TpAttribute
This is a Sequence of Data Elements containing the attribute name and value.
Sequence Element Name | Sequence Element Type | Notes |
---|---|---|
AttributeName | TpString | The name of the attribute. |
AttributeValue | TpAttributeValue | The typed value(s) for the attribute. |
5.1.13 TpAttributeValue
This is a tagged choice of data elements to hold attribute values of different complexity.
Tag Element Type | ||
TpAttributeTagInfo |
Tag Element Value | Choice Element Type | Choice Element Name |
P_SIMPLE_TYPE | TpSimpleAttributeValue | SimpleValue |
P_STRUCTURED_TYPE | TpStructuredAttributeValue | StructuredValue |
P_XML_TYPE | TpXMLString | XMLValue |
5.1.14 TpAttributeList
This is a Numbered List of Data Elements of type TpAttribute.
5.1.15 TpAttributeSet
This is a Numbered Set of Data Elements of type TpAttribute.
5.1.16 TpInt64
Defines a signed 64-bit integer.
5.1.17 TpVersion
This data type is identical to TpString. It is used to uniquely identify the implemented version of the framework or an SCF. The syntax for this datatype is defined as:
P_<publishing body>_<version number>
Where:
<publishing body> is one of the strings listed in the table below.
Character String Value | Description |
PARLAY | Specification released by The Parlay Group. |
ETSI | Specification released by ETSI. |
3GPP | Specification released by 3GPP. |
<version number> consists of numbers separated by underscores (e.g. 3_1). It is recommended that not more than the two most significant numbers (major and minor version) of the version are used.
Examples of version strings are:
Character String Value | Description |
P_PARLAY_3_1 | Parlay v3.1 |
P_ETSI_2_0 | ETSI v2.0 |
P_3GPP_4_3 | 3GPP Release 4.3 |
Note that different version strings can be aliases of each other all pointing to the same SCF/Framework version.
5.1.18 TpStringSet
Defines a Numbered Set of Data Elements of type TpString.
5.1.19 TpStringList
Defines a Numbered List of Data Elements of type TpString.
5.1.20 TpAttributeTagInfo
TpAttributeTagInfo is an enumerated type used as a discriminator for the TpAttributeValue structure, and can contain the following values:
Name | Value | Description |
---|---|---|
P_SIMPLE_TYPE | 0 | Simple type |
P_STRUCTURED_TYPE | 1 | Structured type |
P_XML_TYPE | 2 | XML type |
5.1.21 TpSimpleAttributeValue
This is a tagged choice of data elements to hold attribute values of different complexity.
Tag Element Type | ||
TpSimpleAttributeTypeInfo |
Tag Element Value | Choice Element Type | Choice Element Name |
P_BOOLEAN | TpBoolean | BooleanValue |
P_OCTET | TpOctet | OctetValue |
P_CHAR | TpChar | CharValue |
P_WCHAR | TpWChar | WCharValue |
P_STRING | TpString | StringValue |
P_WSTRING | TpWString | WStringValue |
P_INT16 | TpInt16 | Int16Value |
P_UNSIGNED_INT16 | TpUnsignedInt16 | UnsignedInt16Value |
P_INT32 | TpInt32 | Int32Value |
P_UNSIGNED_INT32 | TpUnsignedInt32 | UnsignedInt32Value |
P_INT64 | TpInt64 | Int64Value |
P_UNSIGNED_INT64 | TpUnsignedInt64 | UnsignedInt64Value |
P_FLOAT | TpFloat | FloatValue |
P_DOUBLE | TpDouble | DoubleValue |
5.1.22 TpSimpleAttributeTypeInfo
TpSimpleAttributeTypeInfo is an enumerated type used as a discriminator for the TpSimpleAttributeValue structure, and can contain the following values:
Name | Value | Description |
---|---|---|
P_BOOLEAN | 0 | Attribute type is type TpBoolean. |
P_OCTET | 1 | Attribute type is type TpOctet. |
P_CHAR | 2 | Attribute type is type TpChar. |
P_WCHAR | 3 | Attribute type is type TpWChar. |
P_STRING | 4 | Attribute type is type TpString. |
P_WSTRING | 5 | Attribute type is type TpWString. |
P_INT16 | 6 | Attribute type is type TpInt16. |
P_UNSIGNED_INT16 | 7 | Attribute type is type TpUnsignedInt16. |
P_INT32 | 8 | Attribute type is type TpInt32. |
P_UNSIGNED_INT32 | 9 | Attribute type is type TpUnsignedInt32. |
P_INT64 | 10 | Attribute type is type TpInt64. |
P_UNSIGNED_INT64 | 11 | Attribute type is type TpUnsignedInt64. |
P_FLOAT | 12 | Attribute type is type TpFloat. |
P_DOUBLE | 13 | Attribute type is type TpDouble. |
5.1.23 TpStructuredAttributeType
This data type is identical to a TpString, and is defined as a string of characters that uniquely identifies the type of a structured data type. Network operator specific capabilities may also be used, but should be preceded by the string "SP_". The pattern of values is defined, where module names and class names map to a fully specified class name.
Character String Value | Description |
P_module1/module2/module3/className | An object of the specified, fully qualified class. |
5.1.24 TpStructuredAttributeValue
This is a Sequence of Data Elements containing the structured attribute type tag and the value to be interpreted using that type.
Sequence Element Name | Sequence Element Type | Notes |
---|---|---|
Type | TpStructuredAttributeType | The type for the value. |
Value | TpAny | The structured values for the attribute. |
5.1.25 TpChar
This type is an 8-bit quantity that may undergo conversion when transmitted by the communication system.
5.1.26 TpWChar
This type is a quantity that may undergo conversion when transmitted by the communication system. The size of this type is implementation-dependent.
5.1.27 TpWString
Defines a TpWChar string, comprising length and data. The length shall be at least a 16-bit integer.
5.1.28 TpInt16
Defines a signed 16-bit integer.
5.1.29 TpUnsignedInt16
Defines an unsigned 16-bit integer.
5.1.30 TpUnsignedInt32
Defines an unsigned 32-bit integer.
5.1.31 TpUnsignedInt64
Defines an unsigned 64-bit integer.
5.1.32 TpDouble
Defines a double precision real number.
5.1.33 TpXMLString
This data type is TpString containing well-formed XML and may contain a reference to/include a DTD or Schema.
5.1.34 TpUnorderedOctetSet
Defines a Numbered Set of Data elements of TpOctet. Note that this is an un-ordered set.
Note that this type should not be removed from the present document, even if unused by any part of the OSA specifications. It is included to ensure that TpOctetSet is correctly used as a Numbered List of Data Elements, and not a Numbered Set.