Open Service Access (OSA); Application Programming Interface (API); Part 2: Common Data Definitions (Parlay 6)

DES/TISPAN-01032-2-OSA

Odprti dostop do storitve (OSA) - Aplikacijski programski vmesnik (API) - 2. del: Definicije splošnih podatkov (Parlay 6)

General Information

Status
Published
Publication Date
18-May-2008
Technical Committee
Current Stage
12 - Completion
Due Date
09-May-2008
Completion Date
19-May-2008
Standard
ETSI ES 204 915-2 V1.1.1 (2008-02) - Open Service Access (OSA); Application Programming Interface (API); Part 2: Common Data Definitions (Parlay 6)
English language
40 pages
sale 15% off
Preview
sale 15% off
Preview
Standard
ETSI ES 204 915-2 V1.1.1 (2008-05) - Open Service Access (OSA); Application Programming Interface (API); Part 2: Common Data Definitions (Parlay 6)
English language
40 pages
sale 15% off
Preview
sale 15% off
Preview
Standardization document
ES 204 915-2 V1.1.1:2008
English language
40 pages
sale 10% off
Preview
sale 10% off
Preview
e-Library read for
1 day

Standards Content (Sample)


Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
ETSI Standard
Open Service Access (OSA);
Application Programming Interface (API);
Part 2: Common Data Definitions
(Parlay 6)

2 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)

Reference
DES/TISPAN-01032-2-OSA
Keywords
API, IDL, OSA, UML
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE

Tel.: +33 4 92 94 42 00  Fax: +33 4 93 65 47 16

Siret N° 348 623 562 00017 - NAF 742 C
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° 7803/88

Important notice
Individual copies of the present document can be downloaded from:
http://www.etsi.org
The present document may be made available in more than one electronic version or in print. In any case of existing or
perceived difference in contents between such versions, the reference version is the Portable Document Format (PDF).
In case of dispute, the reference shall be the printing on ETSI printers of the PDF version kept on a specific network drive
within ETSI Secretariat.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
http://portal.etsi.org/tb/status/status.asp
If you find errors in the present document, please send your comment to one of the following services:
http://portal.etsi.org/chaircor/ETSI_support.asp
Copyright Notification
No part may be reproduced except as authorized by written permission.
The copyright and the foregoing restriction extend to reproduction in all media.

© European Telecommunications Standards Institute 2008.
© The Parlay Group 2008.
All rights reserved.
TM TM TM TM
DECT , PLUGTESTS , UMTS , TIPHON , the TIPHON logo and the ETSI logo are Trade Marks of ETSI registered
for the benefit of its Members.
TM
3GPP is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners.
ETSI
3 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
Contents
Intellectual Property Rights.6
Foreword.6
1 Scope.7
2 References.7
3 Definitions and abbreviations.7
3.1 Definitions.7
3.2 Abbreviations.7
4 Common data definitions .7
5 Common system data definitions .8
5.1 Standard data types.8
5.1.1 TpBoolean.8
5.1.2 TpInt32.8
5.1.3 TpFloat.8
5.1.4 TpLongString.8
5.1.5 TpOctet.8
5.1.6 TpOctetSet.8
5.1.7 TpString.8
5.1.8 TpAssignmentID.8
5.1.9 TpSessionID.8
5.1.10 TpSessionIDSet.9
5.1.11 TpAny.9
5.1.12 TpAttribute.9
5.1.13 TpAttributeValue.9
5.1.14 TpAttributeList.9
5.1.15 TpAttributeSet.9
5.1.16 TpInt64.9
5.1.17 TpVersion.9
5.1.18 TpStringSet.10
5.1.19 TpStringList.10
5.1.20 TpAttributeTagInfo.10
5.1.21 TpSimpleAttributeValue.11
5.1.22 TpSimpleAttributeTypeInfo.11
5.1.23 TpStructuredAttributeType.11
5.1.24 TpStructuredAttributeValue.12
5.1.25 TpChar.12
5.1.26 TpWChar.12
5.1.27 TpWString.12
5.1.28 TpInt16.12
5.1.29 TpUnsignedInt16.12
5.1.30 TpUnsignedInt32.12
5.1.31 TpUnsignedInt64.12
5.1.32 TpDouble.12
5.1.33 TpXMLString.12
5.1.34 TpUnorderedOctetSet.12
5.2 Other Data Sorts .13
5.2.1 Sequence of Data Elements .13
5.2.2 Tagged Choice of Data Elements .13
5.2.3 Numbered Set of Data Elements.13
5.2.4 Reference.14
5.2.5 Numbered List of Data Elements.14
5.3 Interface Related Data Definitions .14
5.3.1 IpInterface.14
5.3.2 IpInterfaceRef.14
ETSI
4 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
5.4 Exception Classes.14
5.4.1 Underlying Technology Exceptions .14
5.4.2 TpCommonExceptions.14
5.4.3 Constants associated with TpCommonExceptions .15
5.4.4 Exceptions available to all methods on all interfaces .15
5.5 Date and Time Related Data Definitions.16
5.5.1 TpDate.16
5.5.2 TpTime.16
5.5.3 TpDateAndTime.17
5.5.4 TpDuration.17
5.5.5 TpTimeInterval.17
5.6 Address Related Data Definitions .18
5.6.1 TpAddress.18
5.6.2 TpAddressSet.18
5.6.3 TpAddressPresentation.19
5.6.4 TpAddressScreening.19
5.6.5 TpAddressPlan.19
5.6.6 TpAddressError .20
5.6.7 TpAddressRange.20
5.6.8 TpURL.21
5.6.9 TpURN.21
5.7 Price-related Data Definitions .22
5.7.1 TpPrice.22
5.7.2 TpAoCInfo.22
5.7.3 TpAoCOrder.22
5.7.4 TpCallAoCOrderCategory.22
5.7.5 TpChargeAdviceInfo.22
5.7.6 TpCAIElements.23
5.7.7 TpChargePerTime.23
5.7.8 TpLanguage .23
5.8 Data Types Common Across Call Control and Data Session Control.23
5.8.1 TpDataSessionQosClass.23
Annex A (normative): OMG IDL Description of the Common Data definitions .24
Annex B (informative): W3C WSDL Description of the Common Data definitions.25
Annex C (informative): Java™ API Description of the Common Data definitions .26
Annex D (normative): Exception Hierarchy.27
Annex E (informative): Description of the Common Data definitions for 3GPP2 cdma2000
networks.36
E.1 General Exceptions.36
E.2 Specific Exceptions.36
E.2.1 Clause 1: Scope .36
E.2.2 Clause 2: References .36
E.2.3 Clause 3: Definitions and abbreviations.36
E.2.4 Clause 4: Common Data definitions.36
E.2.5 Clause 5: Common System Data definitions.36
E.2.6 Annex A (normative): OMG IDL Description of the Common Data definitions.36
E.2.7 Annex B (informative): W3C WSDL Description of the Common Data definitions.37
E.2.8 Annex C (informative): Java™ API Description of the Common Data definitions .37
E.2.9 Annex D (normative): Exception Hierarchy.37
Annex F (informative): Record of changes .38
F.1 Data Definitions.38
F.1.1 New.38
F.1.2 Modified.38
F.1.3 Removed.38
ETSI
5 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
F.2 Exceptions.38
F.2.1 New.38
F.2.2 Modified.38
F.2.3 Removed.39
F.3 Others.39
History .40

ETSI
6 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
Intellectual Property Rights
IPRs essential or potentially essential to the present document may have been declared to ETSI. The information
pertaining to these essential IPRs, if any, is publicly available for ETSI members and non-members, and can be found
in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to ETSI in
respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the ETSI Web
server (http://webapp.etsi.org/IPR/home.asp).
Pursuant to the ETSI IPR Policy, no investigation, including IPR searches, has been carried out by ETSI. No guarantee
can be given as to the existence of other IPRs not referenced in ETSI SR 000 314 (or the updates on the ETSI Web
server) which are, or may be, or may become, essential to the present document.
Foreword
This ETSI Standard (ES) has been produced by ETSI Technical Committee Telecommunications and Internet
converged Services and Protocols for Advanced Networking (TISPAN), and is now submitted for the ETSI standards
Membership Approval Procedure.
The present document is part 2 of a multi-part deliverable covering Open Service Access (OSA); Application
Programming Interface (API), as identified below. The API specification (ES 204 915) is structured in the following
parts:
Part 1: "Overview";
Part 2: "Common Data Definitions";
Part 3: "Framework";
Part 4: "Call Control";
Part 5: "User Interaction SCF";
Part 6: "Mobility SCF";
Part 7: "Terminal Capabilities SCF";
Part 8: "Data Session Control SCF";
Part 9: "Generic Messaging SCF";
Part 10: "Connectivity Manager SCF";
Part 11: "Account Management SCF";
Part 12: "Charging SCF";
Part 13: "Policy Management SCF";
Part 14: "Presence and Availability Management SCF";
Part 15: "Multi-Media Messaging SCF"
Part 16: "Service Broker SCF".
The present document has been defined jointly between ETSI, The Parlay Group (http://www.parlay.org) and the 3GPP,
in co-operation with a number of JAIN™ Community (http://www.java.sun.com/products/jain) member companies.
The present document forms part of the Parlay 6.0 set of specifications.
The present document is equivalent to 3GPP TS 29.198-2 V7.0.0 (Release 7).
ETSI
7 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
1 Scope
The present document is part 2 of the Stage 3 specification for an Application Programming Interface (API) for Open
Service Access (OSA).
The OSA specifications define an architecture that enables application developers to make use of network functionality
through an open standardised interface, i.e. the OSA APIs.
The present document specifies the Common Data Definitions of the OSA. The Common Data Definitions contain
data-types that are common across the rest of the OSA API. All aspects of the Common Data are defined here, these
being:
• Data Definitions.
• IDL Description of the data types.
• WSDL Description of the data types.
• Reference to the Java™ API description of the data types.
2 References
The references listed in clause 2 of ES 204 915-1 contain provisions which, through reference in this text, constitute
provisions of the present document.
ETSI ES 204 915-1: "Open Service Access (OSA); Application Programming Interface (API); Part 1: Overview
(Parlay 6)".
3 Definitions and abbreviations
3.1 Definitions
For the purposes of the present document, the terms and definitions given in ES 204 915-1 apply.
3.2 Abbreviations
For the purposes of the present document, the abbreviations given in ES 204 915-1 apply.
4 Common data definitions
The following clauses describe each aspect of the Common data definitions.
The order is as follows:
• The Data Definitions clause shows a detailed expansion of each of the data types associated with the methods
within the classes.
• IDL description of the data types (normative annex).
• WSDL description of the data types (informative annex).
• Reference to the Java™ API description of the data types (informative annex).
ETSI
8 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
5 Common system data definitions
These data definitions are assumed to be provided by the client operating system.
5.1 Standard data types
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 must 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 must 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.
ETSI
9 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
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__
ETSI
10 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
Where:
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.

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
ETSI
11 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
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.

ETSI
12 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
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.
ETSI
13 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
5.2 Other Data Sorts
The APIs assumes that the following data syntaxes can be supported.
5.2.1 Sequence of Data Elements
This describes a sequence of data types. This may be defined as a structure (for example, in C++) or simply a sequence
of data elements within a structure.
EXAMPLE: The TpAddress data type may be defined in C++ as:
typedef struct {
TpAddressPlan  Plan;
TpString   AddrString;
TpString   Name;
TpAddressPresentation Presentation;
TpAddressScreening Screening;
TpString  SubAddressString;
} TpAddress;
5.2.2 Tagged Choice of Data Elements
This describes a data type which actually evaluates to one of a choice of a number of data elements. This data element
contains two parts: a tag data type (the tag part) which is used to identify the chosen data type, and the chosen data type
itself (the union part). This form of data type is also referred to as a tagged union.
This data type can be implemented (for example, in C++) as a structure containing an integer for the tag part, and a
union for the union part.
This data type is implementation specific. Please refer to the appropriate IDL documents (and the resulting language
mappings) to see how this data type is implemented.
EXAMPLE: The TpCallError data type may be defined in C++ as:
typedef struct {
TpCallErrorType Tag;
union {
TpCallErrorInfoUndefined   Undefined;
TpCallErrorInfoRoutingAborted RoutingAborted;
TpCallErrorInfoCallAbandoned  CallAbandoned;
TpCallErrorInfoInvalidAddress InvalidAddress;
TpCallErrorInfoInvalidState  InvalidState;
TpCallErrorInfoInvalidCriteria InvalidCriteria;
} callErrorInfo;
} TpCallError;
5.2.3 Numbered Set of Data Elements
This describes a data type which comprises an integer which indicates the total number of data elements in the set (the
number part), and an unordered set of data elements (the data part). Set data types do not contain duplicate data
elements.
Note that TpOctetSet is a Numbered List of Data Elements, not a Numbered Set.
EXAMPLE: The TpAddressSet data type may be defined in C++ as:
typedef struct {
TpInt32 Number;
TpAddress Set[Number];
} TpAddressSet;
ETSI
14 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
5.2.4 Reference
This describes a reference (or pointer) to a data type. When one interface inherits directly from another interface, a
reference to the inheriting interface can be used when the base interface reference is required. For example, the
references to Multi-Media Call Control interfaces can be used in Multi-Party Call Control methods that have been
inherited by Multi-Media Call Control from Multi-Party Call Control interfaces.
5.2.5 Numbered List of Data Elements
This describes a data type which comprises an integer which indicates the total number of data elements in the set (the
number part), and an ordered set of data elements (the data part). List data types can contain duplicate data elements.
EXAMPLE: The TpStringList data type may be defined in C++ as:
typedef struct {
TpInt32 Number;
TpString List[Number];
} TpStringList;
5.3 Interface Related Data Definitions
5.3.1 IpInterface
Defines the address of a generic interface instance.
5.3.2 IpInterfaceRef
Defines a Reference to type IpInterface.
5.4 Exception Classes
5.4.1 Underlying Technology Exceptions
All methods contain a signature showing, amongst other things, the explicit exceptions that they may throw. In addition
to these exceptions, all methods can throw a number of implicit exceptions. These exceptions do not need to be included
within the method signatures and are given below.
These exceptions would be thrown by the underlying technology (e.g. CORBA, Java™) as a result of problems
encountered, for example, with the way the API method is invoked. They are a minimum set of exceptions that must be
throwable by the underlying technology. Depending upon the underlying technology, additional method exceptions may
also be thrown.
Description
Invalid Parameter: A method has been passed an invalid parameter argument.
Invalid Parameter Value: A method parameter has been passed a value that is out of range.
Parameter Missing: A method has not been passed a mandatory parameter argument.

5.4.2 TpCommonExceptions
Defines the structure of the exception class which is applicable to all methods.
Structure Element Name Structure Element Type Structure Element Description
ExceptionType TpInt32 Carries a constant from the list in the table below.
ExtraInformation TpString Carries extra information to help identify the source of the
exception, e.g. a parameter name.

ETSI
15 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
5.4.3 Constants associated with TpCommonExceptions
Name Value Description
P_RESOURCES_UNAVAILABLE 000Dh The required resources in the network are not available.
P_TASK_REFUSED 000Eh The requested method has been refused.
P_TASK_CANCELLED 000Fh The requested method has been cancelled.
P_NO_CALLBACK_ADDRESS_SET 0011h The requested method is refused because no callback
address has been set (this may be the result of a timing
issue between setting the callback address and
invoking the method).
P_POLICY_VIOLATION 0013h A policy has been breached and therefore the request
has been rejected. All the input to the method may be
valid as meeting the required input for the operation,
but using that input in the execution of the service
resulted in conditions that require the service not to
complete.
P_METHOD_NOT_SUPPORTED 0016h The method is not allowed or supported within the
context of the current service agreement.
P_INVALID_STATE 02E8h Unexpected sequence of methods, i.e. the sequence
does not match the specified state diagrams.

5.4.4 Exceptions available to all methods on all interfaces
The following are the list of exception classes which are available to all interfaces of the API.
Name Description
P_APPLICATION_NOT_ACTIVATED An application is unauthorised to access information and
request services with regards to users that have deactivated
that particular application.
In case the request was for information related to multiple user
identities the reference to user identities that are causing this
exception will be returned in the extra information of the
exception.
P_INFORMATION_NOT_AVAILABLE The requested information is not available. A reason might be
that the information is unavailable in the core network or that
the application is unauthorised to access the information. In
case the request was for information related to multiple user
identities, the reference to user identities that are causing this
exception will be returned in the extra information of the
exception.
P_INVALID_ADDRESS Invalid address specified.
P_INVALID_AMOUNT Invalid amount specified.
P_INVALID_ASSIGNMENT_ID The assignment ID is invalid.
P_INVALID_CRITERIA Invalid criteria specified.
P_INVALID_CURRENCY Invalid currency specified.
P_INVALID_EVENT_TYPE Invalid event type.
P_INVALID_INTERFACE_NAME Invalid interface name.
P_INVALID_INTERFACE_TYPE The interface reference supplied by the client is the wrong
type.
P_INVALID_NETWORK_STATE Although the sequence of method calls is allowed by the
gateway, the underlying protocol cannot support it.
E.g. in some protocols some methods are only allowed by the
protocol, when the call processing is suspended,
e.g. after reporting an event that was monitored in interrupt
mode.
P_INVALID_SESSION_ID Invalid session ID.
P_INVALID_TIME_AND_DATE_FORMAT Invalid date and time format provided.
P_UNAUTHORISED_PARAMETER_VALUE A method parameter value violates the Service Level
Agreement.
ETSI
16 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
Name Description
P_UNKNOWN_SUBSCRIBER The subscriber is not known in the network or the application
is unauthorised to access information.
In case the request was for information related to multiple user
identities, the reference to user identities that are causing this
exception will be returned in the extra information of the
exception.
P_UNSUPPORTED_ADDRESS_PLAN An address contains an address plan which is not supported.
P_INVALID_VERSION An invalid version is specified.

5.5 Date and Time Related Data Definitions
5.5.1 TpDate
This data type is identical to a TpString. It specifies the data in accordance with International Standard ISO 8601. This
is defined as the string of characters in the following format:
YYYY-MM-DD
where the date is specified as:
YYYY four digits year
MM two digits month
DD two digits day
The date elements are separated by a hyphen character (-).
EXAMPLE: The 4 December 1998, is encoded as the string:
1998-12-04
5.5.2 TpTime
This data type is identical to a TpString. It specifies the time in accordance with International Standard ISO 8601. This
is defined as the string of characters in the following format:
HH:MM:SS.mmm
or
HH:MM:SS.mmmZ
where the time is specified as:
HH two digits hours (24h notation)
MM two digits minutes
SS two digits seconds
mmm three digits fractions of a second (i.e. milliseconds)
The time elements are separated by a colon character (:). The date and time are separated by a space. Optionally, a
capital letter Z may be appended to the time field to indicate Universal Time (UTC). Otherwise, local time is assumed.
EXAMPLE: 10:30 and 15 seconds is encoded as the string:
10:30:15.000
for local time, or in UTC it would be: 10:30:15.000Z
ETSI
17 Final draft ETSI ES 204 915-2 V1.1.1 (2008-02)
5.5.3 TpDateAndTime
This data type is identical to a TpString. It specifies the data and time in accordance with International Standard
ISO 8601. This is defined as the string of characters in the following format:
YYYY-MM-DD HH:MM:SS.mmm
or
YYYY-MM-DD HH:MM:SS.mmmZ
where the date is specified as:
YYYY four digits year
MM two digits month
DD two digits day
The date elements are separated by a hyphen character (-).
The time is specified as:
HH two digits hours (24h notation)
MM two digits minutes
SS two digits seconds
mmm three digits fractions of a second (i.e. milliseconds)
The time elements are separated by a colon character (:). The date and time are separated by a space. Optionally, a
capital letter Z may be appended to the time field to indicate Universal Time (UTC). Otherwise, local time is assumed.
EXAMPLE: The 4 December 1998, at 10:30 and 15 seconds is encoded as the string:
1998-12-04 10:30:15.000
for local time, or in UTC it would be:
1998-12-04 10:30:15.000Z
5.5.4 TpDuration
This data type is a TpInt32 representing a time interval in milliseconds. A value of "-1" defines infinite duration and a
value of "-2" represents a default dura
...


ETSI Standard
Open Service Access (OSA);
Application Programming Interface (API);
Part 2: Common Data Definitions
(Parlay 6)

2 ETSI ES 204 915-2 V1.1.1 (2008-05)

Reference
DES/TISPAN-01032-2-OSA
Keywords
API, IDL, OSA, UML
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE

Tel.: +33 4 92 94 42 00  Fax: +33 4 93 65 47 16

Siret N° 348 623 562 00017 - NAF 742 C
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° 7803/88

Important notice
Individual copies of the present document can be downloaded from:
http://www.etsi.org
The present document may be made available in more than one electronic version or in print. In any case of existing or
perceived difference in contents between such versions, the reference version is the Portable Document Format (PDF).
In case of dispute, the reference shall be the printing on ETSI printers of the PDF version kept on a specific network drive
within ETSI Secretariat.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
http://portal.etsi.org/tb/status/status.asp
If you find errors in the present document, please send your comment to one of the following services:
http://portal.etsi.org/chaircor/ETSI_support.asp
Copyright Notification
No part may be reproduced except as authorized by written permission.
The copyright and the foregoing restriction extend to reproduction in all media.

© European Telecommunications Standards Institute 2008.
© The Parlay Group 2008.
All rights reserved.
TM TM TM TM
DECT , PLUGTESTS , UMTS , TIPHON , the TIPHON logo and the ETSI logo are Trade Marks of ETSI registered
for the benefit of its Members.
TM
3GPP is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners.
ETSI
3 ETSI ES 204 915-2 V1.1.1 (2008-05)
Contents
Intellectual Property Rights.6
Foreword.6
1 Scope.7
2 References.7
3 Definitions and abbreviations.7
3.1 Definitions.7
3.2 Abbreviations.7
4 Common data definitions .7
5 Common system data definitions .8
5.1 Standard data types.8
5.1.1 TpBoolean.8
5.1.2 TpInt32.8
5.1.3 TpFloat.8
5.1.4 TpLongString.8
5.1.5 TpOctet.8
5.1.6 TpOctetSet.8
5.1.7 TpString.8
5.1.8 TpAssignmentID.8
5.1.9 TpSessionID.8
5.1.10 TpSessionIDSet.9
5.1.11 TpAny.9
5.1.12 TpAttribute.9
5.1.13 TpAttributeValue.9
5.1.14 TpAttributeList.9
5.1.15 TpAttributeSet.9
5.1.16 TpInt64.9
5.1.17 TpVersion.9
5.1.18 TpStringSet.10
5.1.19 TpStringList.10
5.1.20 TpAttributeTagInfo.10
5.1.21 TpSimpleAttributeValue.11
5.1.22 TpSimpleAttributeTypeInfo.11
5.1.23 TpStructuredAttributeType.11
5.1.24 TpStructuredAttributeValue.12
5.1.25 TpChar.12
5.1.26 TpWChar.12
5.1.27 TpWString.12
5.1.28 TpInt16.12
5.1.29 TpUnsignedInt16.12
5.1.30 TpUnsignedInt32.12
5.1.31 TpUnsignedInt64.12
5.1.32 TpDouble.12
5.1.33 TpXMLString.12
5.1.34 TpUnorderedOctetSet.12
5.2 Other Data Sorts .13
5.2.1 Sequence of Data Elements .13
5.2.2 Tagged Choice of Data Elements .13
5.2.3 Numbered Set of Data Elements.13
5.2.4 Reference.14
5.2.5 Numbered List of Data Elements.14
5.3 Interface Related Data Definitions .14
5.3.1 IpInterface.14
5.3.2 IpInterfaceRef.14
ETSI
4 ETSI ES 204 915-2 V1.1.1 (2008-05)
5.4 Exception Classes.14
5.4.1 Underlying Technology Exceptions .14
5.4.2 TpCommonExceptions.14
5.4.3 Constants associated with TpCommonExceptions .15
5.4.4 Exceptions available to all methods on all interfaces .15
5.5 Date and Time Related Data Definitions.16
5.5.1 TpDate.16
5.5.2 TpTime.16
5.5.3 TpDateAndTime.17
5.5.4 TpDuration.17
5.5.5 TpTimeInterval.17
5.6 Address Related Data Definitions .18
5.6.1 TpAddress.18
5.6.2 TpAddressSet.18
5.6.3 TpAddressPresentation.19
5.6.4 TpAddressScreening.19
5.6.5 TpAddressPlan.19
5.6.6 TpAddressError .20
5.6.7 TpAddressRange.20
5.6.8 TpURL.21
5.6.9 TpURN.21
5.7 Price-related Data Definitions .22
5.7.1 TpPrice.22
5.7.2 TpAoCInfo.22
5.7.3 TpAoCOrder.22
5.7.4 TpCallAoCOrderCategory.22
5.7.5 TpChargeAdviceInfo.22
5.7.6 TpCAIElements.23
5.7.7 TpChargePerTime.23
5.7.8 TpLanguage .23
5.8 Data Types Common Across Call Control and Data Session Control.23
5.8.1 TpDataSessionQosClass.23
Annex A (normative): OMG IDL Description of the Common Data definitions .24
Annex B (informative): W3C WSDL Description of the Common Data definitions.25
Annex C (informative): Java™ API Description of the Common Data definitions .26
Annex D (normative): Exception Hierarchy.27
Annex E (informative): Description of the Common Data definitions for 3GPP2 cdma2000
networks.36
E.1 General Exceptions.36
E.2 Specific Exceptions.36
E.2.1 Clause 1: Scope .36
E.2.2 Clause 2: References .36
E.2.3 Clause 3: Definitions and abbreviations.36
E.2.4 Clause 4: Common Data definitions.36
E.2.5 Clause 5: Common System Data definitions.36
E.2.6 Annex A (normative): OMG IDL Description of the Common Data definitions.36
E.2.7 Annex B (informative): W3C WSDL Description of the Common Data definitions.37
E.2.8 Annex C (informative): Java™ API Description of the Common Data definitions .37
E.2.9 Annex D (normative): Exception Hierarchy.37
Annex F (informative): Record of changes .38
F.1 Data Definitions.38
F.1.1 New.38
F.1.2 Modified.38
F.1.3 Removed.38
ETSI
5 ETSI ES 204 915-2 V1.1.1 (2008-05)
F.2 Exceptions.38
F.2.1 New.38
F.2.2 Modified.38
F.2.3 Removed.39
F.3 Others.39
History .40

ETSI
6 ETSI ES 204 915-2 V1.1.1 (2008-05)
Intellectual Property Rights
IPRs essential or potentially essential to the present document may have been declared to ETSI. The information
pertaining to these essential IPRs, if any, is publicly available for ETSI members and non-members, and can be found
in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to ETSI in
respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the ETSI Web
server (http://webapp.etsi.org/IPR/home.asp).
Pursuant to the ETSI IPR Policy, no investigation, including IPR searches, has been carried out by ETSI. No guarantee
can be given as to the existence of other IPRs not referenced in ETSI SR 000 314 (or the updates on the ETSI Web
server) which are, or may be, or may become, essential to the present document.
Foreword
This ETSI Standard (ES) has been produced by ETSI Technical Committee Telecommunications and Internet
converged Services and Protocols for Advanced Networking (TISPAN).
The present document is part 2 of a multi-part deliverable covering Open Service Access (OSA); Application
Programming Interface (API), as identified below. The API specification (ES 204 915) is structured in the following
parts:
Part 1: "Overview";
Part 2: "Common Data Definitions";
Part 3: "Framework";
Part 4: "Call Control";
Part 5: "User Interaction SCF";
Part 6: "Mobility SCF";
Part 7: "Terminal Capabilities SCF";
Part 8: "Data Session Control SCF";
Part 9: "Generic Messaging SCF";
Part 10: "Connectivity Manager SCF";
Part 11: "Account Management SCF";
Part 12: "Charging SCF";
Part 13: "Policy Management SCF";
Part 14: "Presence and Availability Management SCF";
Part 15: "Multi-Media Messaging SCF"
Part 16: "Service Broker SCF".
The present document has been defined jointly between ETSI, The Parlay Group (http://www.parlay.org) and the 3GPP,
in co-operation with a number of JAIN™ Community (http://www.java.sun.com/products/jain) member companies.
The present document forms part of the Parlay 6.0 set of specifications.
The present document is equivalent to 3GPP TS 29.198-2 V7.0.0 (Release 7).
ETSI
7 ETSI ES 204 915-2 V1.1.1 (2008-05)
1 Scope
The present document is part 2 of the Stage 3 specification for an Application Programming Interface (API) for Open
Service Access (OSA).
The OSA specifications define an architecture that enables application developers to make use of network functionality
through an open standardised interface, i.e. the OSA APIs.
The present document specifies the Common Data Definitions of the OSA. The Common Data Definitions contain
data-types that are common across the rest of the OSA API. All aspects of the Common Data are defined here, these
being:
• Data Definitions.
• IDL Description of the data types.
• WSDL Description of the data types.
• Reference to the Java™ API description of the data types.
2 References
The references listed in clause 2 of ES 204 915-1 contain provisions which, through reference in this text, constitute
provisions of the present document.
ETSI ES 204 915-1: "Open Service Access (OSA); Application Programming Interface (API); Part 1: Overview
(Parlay 6)".
3 Definitions and abbreviations
3.1 Definitions
For the purposes of the present document, the terms and definitions given in ES 204 915-1 apply.
3.2 Abbreviations
For the purposes of the present document, the abbreviations given in ES 204 915-1 apply.
4 Common data definitions
The following clauses describe each aspect of the Common data definitions.
The order is as follows:
• The Data Definitions clause shows a detailed expansion of each of the data types associated with the methods
within the classes.
• IDL description of the data types (normative annex).
• WSDL description of the data types (informative annex).
• Reference to the Java™ API description of the data types (informative annex).
ETSI
8 ETSI ES 204 915-2 V1.1.1 (2008-05)
5 Common system data definitions
These data definitions are assumed to be provided by the client operating system.
5.1 Standard data types
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 must 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 must 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.
ETSI
9 ETSI ES 204 915-2 V1.1.1 (2008-05)
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__
ETSI
10 ETSI ES 204 915-2 V1.1.1 (2008-05)
Where:
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.

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
ETSI
11 ETSI ES 204 915-2 V1.1.1 (2008-05)
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.

ETSI
12 ETSI ES 204 915-2 V1.1.1 (2008-05)
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.
ETSI
13 ETSI ES 204 915-2 V1.1.1 (2008-05)
5.2 Other Data Sorts
The APIs assumes that the following data syntaxes can be supported.
5.2.1 Sequence of Data Elements
This describes a sequence of data types. This may be defined as a structure (for example, in C++) or simply a sequence
of data elements within a structure.
EXAMPLE: The TpAddress data type may be defined in C++ as:
typedef struct {
TpAddressPlan  Plan;
TpString   AddrString;
TpString   Name;
TpAddressPresentation Presentation;
TpAddressScreening Screening;
TpString  SubAddressString;
} TpAddress;
5.2.2 Tagged Choice of Data Elements
This describes a data type which actually evaluates to one of a choice of a number of data elements. This data element
contains two parts: a tag data type (the tag part) which is used to identify the chosen data type, and the chosen data type
itself (the union part). This form of data type is also referred to as a tagged union.
This data type can be implemented (for example, in C++) as a structure containing an integer for the tag part, and a
union for the union part.
This data type is implementation specific. Please refer to the appropriate IDL documents (and the resulting language
mappings) to see how this data type is implemented.
EXAMPLE: The TpCallError data type may be defined in C++ as:
typedef struct {
TpCallErrorType Tag;
union {
TpCallErrorInfoUndefined   Undefined;
TpCallErrorInfoRoutingAborted RoutingAborted;
TpCallErrorInfoCallAbandoned  CallAbandoned;
TpCallErrorInfoInvalidAddress InvalidAddress;
TpCallErrorInfoInvalidState  InvalidState;
TpCallErrorInfoInvalidCriteria InvalidCriteria;
} callErrorInfo;
} TpCallError;
5.2.3 Numbered Set of Data Elements
This describes a data type which comprises an integer which indicates the total number of data elements in the set (the
number part), and an unordered set of data elements (the data part). Set data types do not contain duplicate data
elements.
Note that TpOctetSet is a Numbered List of Data Elements, not a Numbered Set.
EXAMPLE: The TpAddressSet data type may be defined in C++ as:
typedef struct {
TpInt32 Number;
TpAddress Set[Number];
} TpAddressSet;
ETSI
14 ETSI ES 204 915-2 V1.1.1 (2008-05)
5.2.4 Reference
This describes a reference (or pointer) to a data type. When one interface inherits directly from another interface, a
reference to the inheriting interface can be used when the base interface reference is required. For example, the
references to Multi-Media Call Control interfaces can be used in Multi-Party Call Control methods that have been
inherited by Multi-Media Call Control from Multi-Party Call Control interfaces.
5.2.5 Numbered List of Data Elements
This describes a data type which comprises an integer which indicates the total number of data elements in the set (the
number part), and an ordered set of data elements (the data part). List data types can contain duplicate data elements.
EXAMPLE: The TpStringList data type may be defined in C++ as:
typedef struct {
TpInt32 Number;
TpString List[Number];
} TpStringList;
5.3 Interface Related Data Definitions
5.3.1 IpInterface
Defines the address of a generic interface instance.
5.3.2 IpInterfaceRef
Defines a Reference to type IpInterface.
5.4 Exception Classes
5.4.1 Underlying Technology Exceptions
All methods contain a signature showing, amongst other things, the explicit exceptions that they may throw. In addition
to these exceptions, all methods can throw a number of implicit exceptions. These exceptions do not need to be included
within the method signatures and are given below.
These exceptions would be thrown by the underlying technology (e.g. CORBA, Java™) as a result of problems
encountered, for example, with the way the API method is invoked. They are a minimum set of exceptions that must be
throwable by the underlying technology. Depending upon the underlying technology, additional method exceptions may
also be thrown.
Description
Invalid Parameter: A method has been passed an invalid parameter argument.
Invalid Parameter Value: A method parameter has been passed a value that is out of range.
Parameter Missing: A method has not been passed a mandatory parameter argument.

5.4.2 TpCommonExceptions
Defines the structure of the exception class which is applicable to all methods.
Structure Element Name Structure Element Type Structure Element Description
ExceptionType TpInt32 Carries a constant from the list in the table below.
ExtraInformation TpString Carries extra information to help identify the source of the
exception, e.g. a parameter name.

ETSI
15 ETSI ES 204 915-2 V1.1.1 (2008-05)
5.4.3 Constants associated with TpCommonExceptions
Name Value Description
P_RESOURCES_UNAVAILABLE 000Dh The required resources in the network are not available.
P_TASK_REFUSED 000Eh The requested method has been refused.
P_TASK_CANCELLED 000Fh The requested method has been cancelled.
P_NO_CALLBACK_ADDRESS_SET 0011h The requested method is refused because no callback
address has been set (this may be the result of a timing
issue between setting the callback address and
invoking the method).
P_POLICY_VIOLATION 0013h A policy has been breached and therefore the request
has been rejected. All the input to the method may be
valid as meeting the required input for the operation,
but using that input in the execution of the service
resulted in conditions that require the service not to
complete.
P_METHOD_NOT_SUPPORTED 0016h The method is not allowed or supported within the
context of the current service agreement.
P_INVALID_STATE 02E8h Unexpected sequence of methods, i.e. the sequence
does not match the specified state diagrams.

5.4.4 Exceptions available to all methods on all interfaces
The following are the list of exception classes which are available to all interfaces of the API.
Name Description
P_APPLICATION_NOT_ACTIVATED An application is unauthorised to access information and
request services with regards to users that have deactivated
that particular application.
In case the request was for information related to multiple user
identities the reference to user identities that are causing this
exception will be returned in the extra information of the
exception.
P_INFORMATION_NOT_AVAILABLE The requested information is not available. A reason might be
that the information is unavailable in the core network or that
the application is unauthorised to access the information. In
case the request was for information related to multiple user
identities, the reference to user identities that are causing this
exception will be returned in the extra information of the
exception.
P_INVALID_ADDRESS Invalid address specified.
P_INVALID_AMOUNT Invalid amount specified.
P_INVALID_ASSIGNMENT_ID The assignment ID is invalid.
P_INVALID_CRITERIA Invalid criteria specified.
P_INVALID_CURRENCY Invalid currency specified.
P_INVALID_EVENT_TYPE Invalid event type.
P_INVALID_INTERFACE_NAME Invalid interface name.
P_INVALID_INTERFACE_TYPE The interface reference supplied by the client is the wrong
type.
P_INVALID_NETWORK_STATE Although the sequence of method calls is allowed by the
gateway, the underlying protocol cannot support it.
E.g. in some protocols some methods are only allowed by the
protocol, when the call processing is suspended,
e.g. after reporting an event that was monitored in interrupt
mode.
P_INVALID_SESSION_ID Invalid session ID.
P_INVALID_TIME_AND_DATE_FORMAT Invalid date and time format provided.
P_UNAUTHORISED_PARAMETER_VALUE A method parameter value violates the Service Level
Agreement.
ETSI
16 ETSI ES 204 915-2 V1.1.1 (2008-05)
Name Description
P_UNKNOWN_SUBSCRIBER The subscriber is not known in the network or the application
is unauthorised to access information.
In case the request was for information related to multiple user
identities, the reference to user identities that are causing this
exception will be returned in the extra information of the
exception.
P_UNSUPPORTED_ADDRESS_PLAN An address contains an address plan which is not supported.
P_INVALID_VERSION An invalid version is specified.

5.5 Date and Time Related Data Definitions
5.5.1 TpDate
This data type is identical to a TpString. It specifies the data in accordance with International Standard ISO 8601. This
is defined as the string of characters in the following format:
YYYY-MM-DD
where the date is specified as:
YYYY four digits year
MM two digits month
DD two digits day
The date elements are separated by a hyphen character (-).
EXAMPLE: The 4 December 1998, is encoded as the string:
1998-12-04
5.5.2 TpTime
This data type is identical to a TpString. It specifies the time in accordance with International Standard ISO 8601. This
is defined as the string of characters in the following format:
HH:MM:SS.mmm
or
HH:MM:SS.mmmZ
where the time is specified as:
HH two digits hours (24h notation)
MM two digits minutes
SS two digits seconds
mmm three digits fractions of a second (i.e. milliseconds)
The time elements are separated by a colon character (:). The date and time are separated by a space. Optionally, a
capital letter Z may be appended to the time field to indicate Universal Time (UTC). Otherwise, local time is assumed.
EXAMPLE: 10:30 and 15 seconds is encoded as the string:
10:30:15.000
for local time, or in UTC it would be: 10:30:15.000Z
ETSI
17 ETSI ES 204 915-2 V1.1.1 (2008-05)
5.5.3 TpDateAndTime
This data type is identical to a TpString. It specifies the data and time in accordance with International Standard
ISO 8601. This is defined as the string of characters in the following format:
YYYY-MM-DD HH:MM:SS.mmm
or
YYYY-MM-DD HH:MM:SS.mmmZ
where the date is specified as:
YYYY four digits year
MM two digits month
DD two digits day
The date elements are separated by a hyphen character (-).
The time is specified as:
HH two digits hours (24h notation)
MM two digits minutes
SS two digits seconds
mmm three digits fractions of a second (i.e. milliseconds)
The time elements are separated by a colon character (:). The date and time are separated by a space. Optionally, a
capital letter Z may be appended to the time field to indicate Universal Time (UTC). Otherwise, local time is assumed.
EXAMPLE: The 4 December 1998, at 10:30 and 15 seconds is encoded as the string:
1998-12-04 10:30:15.000
for local time, or in UTC it would be:
1998-12-04 10:30:15.000Z
5.5.4 TpDuration
This data type is a TpInt32 representing a time interval in milliseconds. A value of "-1" defines infinite duration and a
value of "-2" represents a default duration.
5.5.5 TpTimeInterval
Defines the Sequence of Data Elements that specify a time interval.
Sequence Element Name Sequence Element Type
StartTime TpDateAndTime
StopTime TpDateAndTime
ETSI
18 ETSI ES 204 915-2 V
...


SLOVENSKI STANDARD
01-september-2008
Odprti dostop do storitve (OSA) - Aplikacijski programski vmesnik (API) - 2. del:
Definicije splošnih podatkov (Parlay 6)
Open Service Access (OSA) - Application Programming Interface (API) - Part 2:
Common Data Definitions (Parlay 6)
Ta slovenski standard je istoveten z: ES 204 915-2 Version 1.1.1
ICS:
35.100.01 Medsebojno povezovanje Open systems
odprtih sistemov na splošno interconnection in general
2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.

ETSI Standard
Open Service Access (OSA);
Application Programming Interface (API);
Part 2: Common Data Definitions
(Parlay 6)

2 ETSI ES 204 915-2 V1.1.1 (2008-05)

Reference
DES/TISPAN-01032-2-OSA
Keywords
API, IDL, OSA, UML
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE

Tel.: +33 4 92 94 42 00  Fax: +33 4 93 65 47 16

Siret N° 348 623 562 00017 - NAF 742 C
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° 7803/88

Important notice
Individual copies of the present document can be downloaded from:
http://www.etsi.org
The present document may be made available in more than one electronic version or in print. In any case of existing or
perceived difference in contents between such versions, the reference version is the Portable Document Format (PDF).
In case of dispute, the reference shall be the printing on ETSI printers of the PDF version kept on a specific network drive
within ETSI Secretariat.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
http://portal.etsi.org/tb/status/status.asp
If you find errors in the present document, please send your comment to one of the following services:
http://portal.etsi.org/chaircor/ETSI_support.asp
Copyright Notification
No part may be reproduced except as authorized by written permission.
The copyright and the foregoing restriction extend to reproduction in all media.

© European Telecommunications Standards Institute 2008.
© The Parlay Group 2008.
All rights reserved.
TM TM TM TM
DECT , PLUGTESTS , UMTS , TIPHON , the TIPHON logo and the ETSI logo are Trade Marks of ETSI registered
for the benefit of its Members.
TM
3GPP is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners.
ETSI
3 ETSI ES 204 915-2 V1.1.1 (2008-05)
Contents
Intellectual Property Rights.6
Foreword.6
1 Scope.7
2 References.7
3 Definitions and abbreviations.7
3.1 Definitions.7
3.2 Abbreviations.7
4 Common data definitions .7
5 Common system data definitions .8
5.1 Standard data types.8
5.1.1 TpBoolean.8
5.1.2 TpInt32.8
5.1.3 TpFloat.8
5.1.4 TpLongString.8
5.1.5 TpOctet.8
5.1.6 TpOctetSet.8
5.1.7 TpString.8
5.1.8 TpAssignmentID.8
5.1.9 TpSessionID.8
5.1.10 TpSessionIDSet.9
5.1.11 TpAny.9
5.1.12 TpAttribute.9
5.1.13 TpAttributeValue.9
5.1.14 TpAttributeList.9
5.1.15 TpAttributeSet.9
5.1.16 TpInt64.9
5.1.17 TpVersion.9
5.1.18 TpStringSet.10
5.1.19 TpStringList.10
5.1.20 TpAttributeTagInfo.10
5.1.21 TpSimpleAttributeValue.11
5.1.22 TpSimpleAttributeTypeInfo.11
5.1.23 TpStructuredAttributeType.11
5.1.24 TpStructuredAttributeValue.12
5.1.25 TpChar.12
5.1.26 TpWChar.12
5.1.27 TpWString.12
5.1.28 TpInt16.12
5.1.29 TpUnsignedInt16.12
5.1.30 TpUnsignedInt32.12
5.1.31 TpUnsignedInt64.12
5.1.32 TpDouble.12
5.1.33 TpXMLString.12
5.1.34 TpUnorderedOctetSet.12
5.2 Other Data Sorts .13
5.2.1 Sequence of Data Elements .13
5.2.2 Tagged Choice of Data Elements .13
5.2.3 Numbered Set of Data Elements.13
5.2.4 Reference.14
5.2.5 Numbered List of Data Elements.14
5.3 Interface Related Data Definitions .14
5.3.1 IpInterface.14
5.3.2 IpInterfaceRef.14
ETSI
4 ETSI ES 204 915-2 V1.1.1 (2008-05)
5.4 Exception Classes.14
5.4.1 Underlying Technology Exceptions .14
5.4.2 TpCommonExceptions.14
5.4.3 Constants associated with TpCommonExceptions .15
5.4.4 Exceptions available to all methods on all interfaces .15
5.5 Date and Time Related Data Definitions.16
5.5.1 TpDate.16
5.5.2 TpTime.16
5.5.3 TpDateAndTime.17
5.5.4 TpDuration.17
5.5.5 TpTimeInterval.17
5.6 Address Related Data Definitions .18
5.6.1 TpAddress.18
5.6.2 TpAddressSet.18
5.6.3 TpAddressPresentation.19
5.6.4 TpAddressScreening.19
5.6.5 TpAddressPlan.19
5.6.6 TpAddressError .20
5.6.7 TpAddressRange.20
5.6.8 TpURL.21
5.6.9 TpURN.21
5.7 Price-related Data Definitions .22
5.7.1 TpPrice.22
5.7.2 TpAoCInfo.22
5.7.3 TpAoCOrder.22
5.7.4 TpCallAoCOrderCategory.22
5.7.5 TpChargeAdviceInfo.22
5.7.6 TpCAIElements.23
5.7.7 TpChargePerTime.23
5.7.8 TpLanguage .23
5.8 Data Types Common Across Call Control and Data Session Control.23
5.8.1 TpDataSessionQosClass.23
Annex A (normative): OMG IDL Description of the Common Data definitions .24
Annex B (informative): W3C WSDL Description of the Common Data definitions.25
Annex C (informative): Java™ API Description of the Common Data definitions .26
Annex D (normative): Exception Hierarchy.27
Annex E (informative): Description of the Common Data definitions for 3GPP2 cdma2000
networks.36
E.1 General Exceptions.36
E.2 Specific Exceptions.36
E.2.1 Clause 1: Scope .36
E.2.2 Clause 2: References .36
E.2.3 Clause 3: Definitions and abbreviations.36
E.2.4 Clause 4: Common Data definitions.36
E.2.5 Clause 5: Common System Data definitions.36
E.2.6 Annex A (normative): OMG IDL Description of the Common Data definitions.36
E.2.7 Annex B (informative): W3C WSDL Description of the Common Data definitions.37
E.2.8 Annex C (informative): Java™ API Description of the Common Data definitions .37
E.2.9 Annex D (normative): Exception Hierarchy.37
Annex F (informative): Record of changes .38
F.1 Data Definitions.38
F.1.1 New.38
F.1.2 Modified.38
F.1.3 Removed.38
ETSI
5 ETSI ES 204 915-2 V1.1.1 (2008-05)
F.2 Exceptions.38
F.2.1 New.38
F.2.2 Modified.38
F.2.3 Removed.39
F.3 Others.39
History .40

ETSI
6 ETSI ES 204 915-2 V1.1.1 (2008-05)
Intellectual Property Rights
IPRs essential or potentially essential to the present document may have been declared to ETSI. The information
pertaining to these essential IPRs, if any, is publicly available for ETSI members and non-members, and can be found
in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to ETSI in
respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the ETSI Web
server (http://webapp.etsi.org/IPR/home.asp).
Pursuant to the ETSI IPR Policy, no investigation, including IPR searches, has been carried out by ETSI. No guarantee
can be given as to the existence of other IPRs not referenced in ETSI SR 000 314 (or the updates on the ETSI Web
server) which are, or may be, or may become, essential to the present document.
Foreword
This ETSI Standard (ES) has been produced by ETSI Technical Committee Telecommunications and Internet
converged Services and Protocols for Advanced Networking (TISPAN).
The present document is part 2 of a multi-part deliverable covering Open Service Access (OSA); Application
Programming Interface (API), as identified below. The API specification (ES 204 915) is structured in the following
parts:
Part 1: "Overview";
Part 2: "Common Data Definitions";
Part 3: "Framework";
Part 4: "Call Control";
Part 5: "User Interaction SCF";
Part 6: "Mobility SCF";
Part 7: "Terminal Capabilities SCF";
Part 8: "Data Session Control SCF";
Part 9: "Generic Messaging SCF";
Part 10: "Connectivity Manager SCF";
Part 11: "Account Management SCF";
Part 12: "Charging SCF";
Part 13: "Policy Management SCF";
Part 14: "Presence and Availability Management SCF";
Part 15: "Multi-Media Messaging SCF"
Part 16: "Service Broker SCF".
The present document has been defined jointly between ETSI, The Parlay Group (http://www.parlay.org) and the 3GPP,
in co-operation with a number of JAIN™ Community (http://www.java.sun.com/products/jain) member companies.
The present document forms part of the Parlay 6.0 set of specifications.
The present document is equivalent to 3GPP TS 29.198-2 V7.0.0 (Release 7).
ETSI
7 ETSI ES 204 915-2 V1.1.1 (2008-05)
1 Scope
The present document is part 2 of the Stage 3 specification for an Application Programming Interface (API) for Open
Service Access (OSA).
The OSA specifications define an architecture that enables application developers to make use of network functionality
through an open standardised interface, i.e. the OSA APIs.
The present document specifies the Common Data Definitions of the OSA. The Common Data Definitions contain
data-types that are common across the rest of the OSA API. All aspects of the Common Data are defined here, these
being:
• Data Definitions.
• IDL Description of the data types.
• WSDL Description of the data types.
• Reference to the Java™ API description of the data types.
2 References
The references listed in clause 2 of ES 204 915-1 contain provisions which, through reference in this text, constitute
provisions of the present document.
ETSI ES 204 915-1: "Open Service Access (OSA); Application Programming Interface (API); Part 1: Overview
(Parlay 6)".
3 Definitions and abbreviations
3.1 Definitions
For the purposes of the present document, the terms and definitions given in ES 204 915-1 apply.
3.2 Abbreviations
For the purposes of the present document, the abbreviations given in ES 204 915-1 apply.
4 Common data definitions
The following clauses describe each aspect of the Common data definitions.
The order is as follows:
• The Data Definitions clause shows a detailed expansion of each of the data types associated with the methods
within the classes.
• IDL description of the data types (normative annex).
• WSDL description of the data types (informative annex).
• Reference to the Java™ API description of the data types (informative annex).
ETSI
8 ETSI ES 204 915-2 V1.1.1 (2008-05)
5 Common system data definitions
These data definitions are assumed to be provided by the client operating system.
5.1 Standard data types
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 must 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 must 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.
ETSI
9 ETSI ES 204 915-2 V1.1.1 (2008-05)
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__
ETSI
10 ETSI ES 204 915-2 V1.1.1 (2008-05)
Where:
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.

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
ETSI
11 ETSI ES 204 915-2 V1.1.1 (2008-05)
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.

ETSI
12 ETSI ES 204 915-2 V1.1.1 (2008-05)
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.
ETSI
13 ETSI ES 204 915-2 V1.1.1 (2008-05)
5.2 Other Data Sorts
The APIs assumes that the following data syntaxes can be supported.
5.2.1 Sequence of Data Elements
This describes a sequence of data types. This may be defined as a structure (for example, in C++) or simply a sequence
of data elements within a structure.
EXAMPLE: The TpAddress data type may be defined in C++ as:
typedef struct {
TpAddressPlan  Plan;
TpString   AddrString;
TpString   Name;
TpAddressPresentation Presentation;
TpAddressScreening Screening;
TpString  SubAddressString;
} TpAddress;
5.2.2 Tagged Choice of Data Elements
This describes a data type which actually evaluates to one of a choice of a number of data elements. This data element
contains two parts: a tag data type (the tag part) which is used to identify the chosen data type, and the chosen data type
itself (the union part). This form of data type is also referred to as a tagged union.
This data type can be implemented (for example, in C++) as a structure containing an integer for the tag part, and a
union for the union part.
This data type is implementation specific. Please refer to the appropriate IDL documents (and the resulting language
mappings) to see how this data type is implemented.
EXAMPLE: The TpCallError data type may be defined in C++ as:
typedef struct {
TpCallErrorType Tag;
union {
TpCallErrorInfoUndefined   Undefined;
TpCallErrorInfoRoutingAborted RoutingAborted;
TpCallErrorInfoCallAbandoned  CallAbandoned;
TpCallErrorInfoInvalidAddress InvalidAddress;
TpCallErrorInfoInvalidState  InvalidState;
TpCallErrorInfoInvalidCriteria InvalidCriteria;
} callErrorInfo;
} TpCallError;
5.2.3 Numbered Set of Data Elements
This describes a data type which comprises an integer which indicates the total number of data elements in the set (the
number part), and an unordered set of data elements (the data part). Set data types do not contain duplicate data
elements.
Note that TpOctetSet is a Numbered List of Data Elements, not a Numbered Set.
EXAMPLE: The TpAddressSet data type may be defined in C++ as:
typedef struct {
TpInt32 Number;
TpAddress Set[Number];
} TpAddressSet;
ETSI
14 ETSI ES 204 915-2 V1.1.1 (2008-05)
5.2.4 Reference
This describes a reference (or pointer) to a data type. When one interface inherits directly from another interface, a
reference to the inheriting interface can be used when the base interface reference is required. For example, the
references to Multi-Media Call Control interfaces can be used in Multi-Party Call Control methods that have been
inherited by Multi-Media Call Control from Multi-Party Call Control interfaces.
5.2.5 Numbered List of Data Elements
This describes a data type which comprises an integer which indicates the total number of data elements in the set (the
number part), and an ordered set of data elements (the data part). List data types can contain duplicate data elements.
EXAMPLE: The TpStringList data type may be defined in C++ as:
typedef struct {
TpInt32 Number;
TpString List[Number];
} TpStringList;
5.3 Interface Related Data Definitions
5.3.1 IpInterface
Defines the address of a generic interface instance.
5.3.2 IpInterfaceRef
Defines a Reference to type IpInterface.
5.4 Exception Classes
5.4.1 Underlying Technology Exceptions
All methods contain a signature showing, amongst other things, the explicit exceptions that they may throw. In addition
to these exceptions, all methods can throw a number of implicit exceptions. These exceptions do not need to be included
within the method signatures and are given below.
These exceptions would be thrown by the underlying technology (e.g. CORBA, Java™) as a result of problems
encountered, for example, with the way the API method is invoked. They are a minimum set of exceptions that must be
throwable by the underlying technology. Depending upon the underlying technology, additional method exceptions may
also be thrown.
Description
Invalid Parameter: A method has been passed an invalid parameter argument.
Invalid Parameter Value: A method parameter has been passed a value that is out of range.
Parameter Missing: A method has not been passed a mandatory parameter argument.

5.4.2 TpCommonExceptions
Defines the structure of the exception class which is applicable to all methods.
Structure Element Name Structure Element Type Structure Element Description
ExceptionType TpInt32 Carries a constant from the list in the table below.
ExtraInformation TpString Carries extra information to help identify the source of the
exception, e.g. a parameter name.

ETSI
15 ETSI ES 204 915-2 V1.1.1 (2008-05)
5.4.3 Constants associated with TpCommonExceptions
Name Value Description
P_RESOURCES_UNAVAILABLE 000Dh The required resources in the network are not available.
P_TASK_REFUSED 000Eh The requested method has been refused.
P_TASK_CANCELLED 000Fh The requested method has been cancelled.
P_NO_CALLBACK_ADDRESS_SET 0011h The requested method is refused because no callback
address has been set (this may be the result of a timing
issue between setting the callback address and
invoking the method).
P_POLICY_VIOLATION 0013h A policy has been breached and therefore the request
has been rejected. All the input to the method may be
valid as meeting the required input for the operation,
but using that input in the execution of the service
resulted in conditions that require the service not to
complete.
P_METHOD_NOT_SUPPORTED 0016h The method is not allowed or supported within the
context of the current service agreement.
P_INVALID_STATE 02E8h Unexpected sequence of methods, i.e. the sequence
does not match the specified state diagrams.

5.4.4 Exceptions available to all methods on all interfaces
The following are the list of exception classes which are available to all interfaces of the API.
Name Description
P_APPLICATION_NOT_ACTIVATED An application is unauthorised to access information and
request services with regards to users that have deactivated
that particular application.
In case the request was for information related to multiple user
identities the reference to user identities that are causing this
exception will be returned in the extra information of the
exception.
P_INFORMATION_NOT_AVAILABLE The requested information is not available. A reason might be
that the information is unavailable in the core network or that
the application is unauthorised to access the information. In
case the request was for information related to multiple user
identities, the reference to user identities that are causing this
exception will be returned in the extra information of the
exception.
P_INVALID_ADDRESS Invalid address specified.
P_INVALID_AMOUNT Invalid amount specified.
P_INVALID_ASSIGNMENT_ID The assignment ID is invalid.
P_INVALID_CRITERIA Invalid criteria specified.
P_INVALID_CURRENCY Invalid currency specified.
P_INVALID_EVENT_TYPE Invalid event type.
P_INVALID_INTERFACE_NAME Invalid interface name.
P_INVALID_INTERFACE_TYPE The interface reference supplied by the client is the wrong
type.
P_INVALID_NETWORK_STATE Although the sequence of method calls is allowed by the
gateway, the underlying protocol cannot support it.
E.g. in some protocols some methods are only allowed by the
protocol, when the call processing is suspended,
e.g. after reporting an event that was monitored in interrupt
mode.
P_INVALID_SESSION_ID Invalid session ID.
P_INVALID_TIME_AND_DATE_FORMAT Invalid date and time format provided.
P_UNAUTHORISED_PARAMETER_VALUE A method parameter value violates the Service Level
Agreement.
ETSI
16 ETSI ES 204 915-2 V1.1.1 (2008-05)
Name Description
P_UNKNOWN_SUBSCRIBER The subscriber is not known in the network or the application
is unauthorised to access information.
In case the request was for information related to multiple user
identities, the reference to user identities that are causing this
exception will be returned in the extra information of the
exception.
P_UNSUPPORTED_ADDRESS_PLAN An address contains an address plan which is not supported.
P_INVALID_VERSION An invalid version is specified.

5.5 Date and Time Related Data Definitions
5.5.1 TpDate
This data type is identical to a TpString. It specifies the data in accordance with International Standard ISO 8601. This
is defined as the string of characters in the following format:
YYYY-MM-DD
where the date is specified as:
YYYY four digits year
MM two digits month
DD two digits day
The date elements are separated by a hyphen character (-).
EXAMPLE: The 4 December 1998, is encoded as the string:
1998-12-04
5.5.2 TpTime
This data type is identical to a TpString. It specifies the time in accordance with International Standard ISO 8601. This
is defined as the string of characters in the following format:
HH:MM:SS.mmm
or
HH:MM:SS.mmmZ
where the time is specified as:
HH two digits hours (24h notation)
MM two digits minutes
SS two digits seconds
mmm three digits fractions of a second (i.e. milliseconds)
The time elements are separated by a colon character (:). The date and time are separated by a space. Optionally, a
capital letter Z may be appended to the time field to indicate Universal Time (UTC). Otherwise, local time is assumed.
EXAMPLE: 10:30 and 15 seconds is encoded as the string:
10:30:15.000
for local time, or in UTC it would be: 10:30:15.000Z
ETSI
17 ETSI ES 204 915-2 V1.1.1 (2008-05)
5.5.3 TpDateAndTime
This data type is identical to a TpString. It specifies the data and time in accordance with Internationa
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.

Loading comments...