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

RES/SPAN-120095-2

Odprti dostop do storitve (OSA) – Vmesnik za aplikacijsko programiranje (API) – 2. del: Določitev skupnih podatkov

General Information

Status
Published
Publication Date
28-Jul-2003
Current Stage
12 - Completion
Due Date
08-Aug-2003
Completion Date
29-Jul-2003

Buy Standard

Standardization document
ES 201 915-2 V1.4.1:2005
English language
23 pages
sale 10% off
Preview
sale 10% off
Preview
e-Library read for
1 day

Standards Content (Sample)

SLOVENSKI STANDARD
SIST ES 201 915-2 V1.4.1:2005
01-januar-2005
2GSUWLGRVWRSGRVWRULWYH 26$ ±9PHVQLN]DDSOLNDFLMVNRSURJUDPLUDQMH $3, ±
GHO'RORþLWHYVNXSQLKSRGDWNRY
Open Service Access (OSA); Application Programming Interface (API); Part 2: Common
Data Definitions (Parlay 3)
Ta slovenski standard je istoveten z: ES 201 915-2 Version 1.4.1
ICS:
33.040.01 Telekomunikacijski sistemi Telecommunication systems
na splošno in general
SIST ES 201 915-2 V1.4.1:2005 en
2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.

---------------------- Page: 1 ----------------------

SIST ES 201 915-2 V1.4.1:2005

---------------------- Page: 2 ----------------------

SIST ES 201 915-2 V1.4.1:2005

ETSI ES 201 915-2 V1.4.1 (2003-07)
ETSI Standard


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





---------------------- Page: 3 ----------------------

SIST ES 201 915-2 V1.4.1:2005
 2 ETSI ES 201 915-2 V1.4.1 (2003-07)



Reference
RES/SPAN-120095-2
Keywords
API, OSA, IDL, 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, send your comment to:
editor@etsi.org
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 2003.
© The Parlay Group 2003.
All rights reserved.

TM TM TM
DECT , PLUGTESTS and UMTS are Trade Marks of ETSI registered for the benefit of its Members.
TM
TIPHON and the TIPHON logo are Trade Marks currently being registered by ETSI 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

---------------------- Page: 4 ----------------------

SIST ES 201 915-2 V1.4.1:2005
 3 ETSI ES 201 915-2 V1.4.1 (2003-07)
Contents
Intellectual Property Rights.5
Foreword.5
1 Scope.6
2 References.6
3 Definitions and abbreviations.6
3.1 Definitions.6
3.2 Abbreviations.6
4 Common Data Definitions.6
5 Common System Data Definitions.7
5.1 Standard Data Types .7
5.1.1 TpBoolean.7
5.1.2 TpInt32.7
5.1.3 TpFloat.7
5.1.4 TpLongString.7
5.1.5 TpOctet.7
5.1.6 TpOctetSet.7
5.1.7 TpString.7
5.1.8 TpAssignmentID.7
5.1.9 TpSessionID.7
5.1.10 TpSessionIDSet.8
5.1.11 TpAny.8
5.1.12 TpAttribute.8
5.1.13 TpAttributeType.8
5.1.14 TpAttributeList.8
5.1.15 TpAttributeSet.8
5.2 Other Data Sorts .9
5.2.1 Sequence of Data Elements .9
5.2.2 Tagged Choice of Data Elements .9
5.2.3 Numbered Set of Data Elements.9
5.2.4 Reference.10
5.3 Interface Related Data Definitions .10
5.3.1 IpInterface.10
5.3.2 IpInterfaceRef.10
5.4 Exception Classes.10
5.4.1 Underlying Technology Exceptions .10
5.4.2 TpCommonExceptions.10
5.4.3 Constants associated with TpCommonExceptions .11
5.4.4 Exceptions available to all methods on all interfaces .11
5.5 Date and Time Related Data Definitions.12
5.5.1 TpDate.12
5.5.2 TpTime.12
5.5.3 TpDateAndTime.13
5.5.4 TpDuration.13
5.5.5 TpTimeInterval.13
5.6 Address Related Data Definitions .14
5.6.1 TpAddress.14
5.6.2 TpAddressSet.15
5.6.3 TpAddressPresentation.15
5.6.4 TpAddressScreening.15
5.6.5 TpAddressPlan.15
5.6.6 TpAddressError.16
5.6.7 TpAddressRange.16
5.6.8 TpURL.17
ETSI

---------------------- Page: 5 ----------------------

SIST ES 201 915-2 V1.4.1:2005
 4 ETSI ES 201 915-2 V1.4.1 (2003-07)
5.7 Price-related Data Definitions .17
5.7.1 TpPrice.17
5.7.2 TpAoCInfo.17
5.7.3 TpAoCOrder.18
5.7.4 TpCallAoCOrderCategory.18
5.7.5 TpChargeAdviceInfo.18
5.7.6 TpCAIElements.18
5.7.7 TpChargePerTime.19
5.7.8 TpLanguage.19
Annex A (normative): OMG IDL Description of the Common Data definitions .20
Annex B (informative): Record of changes .21
B.1 Data Definitions.21
B.1.1 New.21
B.1.2 Modified.21
B.1.3 Removed.21
B.2 Exceptions.22
B.2.1 New.22
B.2.2 Modified.22
B.2.3 Removed.22
B.3 Others.22
History .23

ETSI

---------------------- Page: 6 ----------------------

SIST ES 201 915-2 V1.4.1:2005
 5 ETSI ES 201 915-2 V1.4.1 (2003-07)
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 Services and Protocols for Advanced
Networks (SPAN).
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 201 915) is structured in the following
parts:
Part 1: "Overview";
Part 2: "Common Data Definitions";
Part 3: "Framework";
Part 4: "Call Control SCF";
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".
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 3.3 set of specifications.
The present document is equivalent to 3GPP TS 29.198-2 V4.5.0 (Release 4).
ETSI

---------------------- Page: 7 ----------------------

SIST ES 201 915-2 V1.4.1:2005
 6 ETSI ES 201 915-2 V1.4.1 (2003-07)
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 interfaces
2 References
The references listed in clause 2 of ES 201 915-1 contain provisions which, through reference in this text, constitute
provisions of the present document.
ETSI ES 201 915-1: "Open Service Access (OSA); Application Programming Interface (API); Part 1: Overview
(Parlay 3)".
3 Definitions and abbreviations
3.1 Definitions
For the purposes of the present document, the terms and definitions given in ES 201 915-1 apply.
3.2 Abbreviations
For the purposes of the present document, the abbreviations defined in ES 201 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 section shows a detailed expansion of each of the data types associated with the methods
within the classes. Note that some data types are used in other methods and classes and are therefore defined
within the Common Data types part of the present document.
ETSI

---------------------- Page: 8 ----------------------

SIST ES 201 915-2 V1.4.1:2005
 7 ETSI ES 201 915-2 V1.4.1 (2003-07)
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 Set of Data elements of TpOctet.
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 within any instance of an implementation of a given interface,
irrespective of the method invoked on that interface instance. This ID may be used for example to identify single or
multiple event notifications enabled by a requesting interface implementation, or may be used by a requesting interface
implementation to modify or stop functionality associated with a previously supplied assignment ID, e.g. event
notifications, call load control, abort requests.
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.
ETSI

---------------------- Page: 9 ----------------------

SIST ES 201 915-2 V1.4.1:2005
 8 ETSI ES 201 915-2 V1.4.1 (2003-07)
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, type, and value. The attribute Value is
interpreted based on the value of the attribute Type.
Sequence Element Name Sequence Element Type Notes
The name of the attribute.
AttributeName TpString
The type of the attribute. Valid values for Type must include at
AttributeType TpAttributeType
least TpString, TpInt32 and TpFloat.
The values for the attribute. This model allows multi-valued
AttributeValue TpAny
attributes. Cannot be an empty list.

5.1.13 TpAttributeType
This data type is identical to a TpString, and is defined as a string of characters that uniquely identifies the type of an
attribute. Other Network operator specific capabilities may also be used, but should be preceded by the string "SP_".
The following values are defined.
Character String Value Description
NULL
An empty (NULL) string indicates no attribute type
P_STRING
Attribute type is type TpString.
P_INT32
Attribute type is type TpInt32.
P_FLOAT Attribute type is type TpFloat.

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.
ETSI

---------------------- Page: 10 ----------------------

SIST ES 201 915-2 V1.4.1:2005
 9 ETSI ES 201 915-2 V1.4.1 (2003-07)
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.
Example
The TpAddressSet data type may be defined in MIDL as:
typedef struct TpAddressSet
{
TpInt32 Number; [size_is(Number)] TpAddress Set[];
}
TpAddressSet;

ETSI

---------------------- Page: 11 ----------------------

SIST ES 201 915-2 V1.4.1:2005
 10 ETSI ES 201 915-2 V1.4.1 (2003-07)
5.2.4 Reference
This describes a reference (or pointer) to a data type.
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

---------------------- Page: 12 ----------------------

SIST ES 201 915-2 V1.4.1:2005
 11 ETSI ES 201 915-2 V1.4.1 (2003-07)
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_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 a
...

Questions, Comments and Discussion

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