ISO/IEC 10728:1993/Amd 4:1998
(Amendment)Information technology — Information Resource Dictionary System (IRDS) Services Interface — Amendment 4: RPC IDL binding
Information technology — Information Resource Dictionary System (IRDS) Services Interface — Amendment 4: RPC IDL binding
Technologies de l'information — Interface de services du gestionnaire de ressources du système d'informations (IRDS) — Amendement 4: Connexion RPC IDL
General Information
Relations
Standards Content (Sample)
INTERNATIONAL
STANDARD
10728
First edition
1993-04- 15
AMENDMENT 4
1998-05-01
Information technology - Information
Resource Dictionary System (IRDS)
Services Interface
AMENDMENT 4: RPC IDL binding
Technologies de Yin formation - Interface de services du gestionnaire de
ressources du systkme d ’informa tions (RDS)
AMENDEMENT 4: Connexion RPC IDL
---------------------- Page: 1 ----------------------
ISO/IEC 10728: 1993/Amd.4: 1998(E)
Foreword
IS0 (the International Organization for Standardization) and IEC (the International Electrotechnical
Commission) form the specialized system for worldwide standardization. National bodies that are
members of IS0 or IEC participate in the development of International Standards through technical
committees established by the respective organization to deal with particular fields of technical
activity. IS0 and IEC technical committees collaborate in fields of mutual interest. Other international
organizations, governmental and non-governmental, in liaison with IS0 and IEC, also take part in the
work.
In the field of information technology, IS0 and IEC have established a joint technical committee,
ISOLIEC JTC 1. Draft International Standards adopted by the joint technical committee are circulated
to national bodies for voting. Publication as an International Standard requires approval by at least
75% of the national bodies casting a vote.
Amendment 4 to ISO/IEC 10728: 1993 was prepared by Joint Technical Committee ISO/IEC JTC 1,
Information technology, Subcommittee SC 2 1, Open systems interconnection, data management and
open distributed processing.
0 ISO/IEC 1998
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced
or utilized in any form or by any means, electronic or mechanical, including photocopying and
microfilm, without permission in writing from the publisher.
ISO/IEC Copyright Office l Case postale 56 l CH- 1211 Gekve 20 l Switzerland
Printed in Switzerland
ii
---------------------- Page: 2 ----------------------
o ISO/IEC ISO/IEC 10728:1993/Amd.4:1998(E)
Introduction
This Amendment to ISO/IEC 10728 defines the RPC IDL interface to an IS0 IRDS.
An IS0 IRDS RPC IDL binding makes IS0 IRDS repository facilities available to an RPC
environment. This:
increases the availability of IS0 IRDS functionality;
a>
provides IRDS access at low cost to a wider community.
b)
The range of languages from which the IS0 IRDS Services Interface can be accessed is increased to all
of those that can access services defined by the RPC IDL. Tool vendors, tool builders, data providers
and data consumers will benefit from this broader accessibility of an IS0 IRDS.
The general principles set out in ISOIIEC TR10182: 1993, Information technology - Programming
Guidelines for language bindings,
languages, their environments and system sofhvare inteflaces -
have been considered during the development of this Amendment.
. . .
111
---------------------- Page: 3 ----------------------
This page intentionally left blank
---------------------- Page: 4 ----------------------
ISO/IEC 10728: 1993iAmd.4: 1998(E)
o ISOIIEC
Information Resource Dictionary System
Information technology -
(IRDS) Services Interface
AMENDMENT 4: RPC IDL binding
Page v
Contents
Add a new entry to the Table of Contents as follows:
“Annex F- RPC IDL binding”
Page 1
Clause 1
Add a new sentence in Clause 1 paragraph 2, before the last sentence.
“A language binding for RPC IDL is provided in Annex F.”
Page 1
Clause 2
Add a new Normative Reference.
“ISOLEC 11578: 1996 Information technology - Open Systems Interconnection
Remote Procedure Call (RPC) ”
Page 5
Subclause 4.4
Add a new sentence in subclause 4.4.
“Data structures for use with RPC IDL are defined in Annex F.”
Page 5
Subclause 4.5
Add a new sentence in subclause 4.5
“RPC IDL bindings for the services are provided in Annex F.”
Page 71
Subclause 8.1
Amend the first sentence of the NOTE in clause 8.1 to read:
For the Pascal language binding specified in this clause, the C language binding specified in
Annex C, the Ada language binding specified in Annex D ,the CORBA IDL binding specified
in Annex E and the RPC IDL binding specified in Annex F, enumerated types are . .”
Page 75
Clause 9
Amend the first sentence of the second paragraph of Clause 9 to read:
“The service formats are specified in this clause using IS0 standard Pascal. Alternative
service formats for use with the C language binding are specified in Annex C, for the Ada
language binding in Annex D, the CORBA IDL binding in Annex E and the RPC IDL binding
in Annex F.”
Page 105
Add a new Annex F as follows:
---------------------- Page: 5 ----------------------
ISO/IEC 10728: 1993/Amd.4: 1998(E)
0 ISO/IEC
Annex F
(normative)
RPC IDL Binding
The IRDS Services Interface language bindings for the IDL Interface Definition Language are
presented in the form of a .idl file as set out in clause F.3 below.
Fl . Strategy for the Language Binding
In this binding the data names and data structures defined in clause 8 have been adhered to except
where the RPC IDL does not provide an appropriate construct.
Use of this language binding requires the use of a RPC IDL compiler that conforms to ISO/IEC 11578.
F2 . General Rules
1. Those data names in F.3 below that also appear in Clause 8 shall have the same meaning as
is defined in Clause 8. The same rules for the use of separators as defined in Clause 8 shall
apply l
2. The function and parameter names in F.3 below shall have the same meaning as is defined in
Clause 9.
3. The Service Return Codes returned shall be those defined by Clause 9 and Annex A and
they shall have the same meaning.
4. The following mappings form SQL data types to RPC IDL data types have been used:
SQL DATA TYPE RPC IDL DATA TYPE
char *
CHARACTER
CHARACTER VARYING char *
char *
NATIONAL CHARACTER
NATIONAL CHARACTER VARYING char *
float
REAL
double
DOUBLE PRECISION
FLOAT float
long
INTEGER
SMALLINT short
NUMERIC long
DECIMAL long
IrdsDate
DATE
TIME IrdsTime
TIMESTAMP IrdsTimeS tamp
INTERVAL IrdsInterval
5. Every function returns an int which is to be set to the value of the NumStates field of the
RetCode returned by the function.
2
---------------------- Page: 6 ----------------------
ISO/IEC 10728:1993/Amd.4: 1998(E)
@ ISO/IEC
F3 . IDL Interface Definition
The following is the IDL interface definition to an IS0 IRDS.
local interface irds
/* clause 8.1.3 - these definitions are used in 8.2.3 below */
/* The values nl, n2, n3, n4 in this clause are to be replaced by the
implementor by suitable implementor defined values as in clause 8.1.3 of
ISO/IEC 10728. */
const short IrdsSessIdLim = nl; /* nl e.g 255 */
/* IrdsSessIdLim used in 8.2.3 below */
const short 1rdscurIdLi.m = n2; /* n2 e.g 255 */
/* IrdsCurIdLim used in 8.2.3 below */
const short IrdsImpDicNameLen = n3; /* n3 e.g 255 */
/* IrdsImpDicNameLen used in 8.2.3 below */
const short IrdsKeyLen = n4; /* n4 e.g 255 */
/* IrdsKeyLen used in 8.2.1 below */
/* Clause 8.1.4 Data Types */
typedef enum
{
IrdsDataTypeChar, /* SQL CHARACTER */
IrdsDataTypeCharaVar, /* SQL CHARACTER VARYING */
IrdsDataTypeNatCharaVar, /* SQL NATIONAL CHARACTER VARYING */
IrdsDataTypeReal, /* SQL REAL */
IrdsDataTypeDouble, /* SQL DOUBLE PRECISION */
IrdsDataTypeFloat, /* SQL FLOAT */
IrdsDataTypeInteger, /* SQL INTEGER */
IrdsDataTypeSmallint, /* SQL SMALLINT */
IrdsDataTypeNumeric, /* SQL NUMERIC */
IrdsDataTypeDecimal, /* SQL DECIMAL */
IrdsDataTypeDate, /* SQL DATE */
IrdsDataTypeTime, /* SQL TIME */
IrdsDataTypeTimestamp, /* SQL TIMESTAMP */
IrdsDataTypeInterval,
/* SQL INTERVAL */
IrdsDataTypeIrdsKey
/* SQL IRDS KEY */
> IrdsDataType;
/* Clause 8.1.5 IRD Content Status Classes */
typedef enum
{
IrdsDcsClsUcntl, /* Uncontrolled */
IrdsDcsClsCntl, /* Controlled */
IrdsDcsClsArch /* Archived */
> IrdsDcsCls;
Clause 8.1.6 Close Type parameter */
/*
typedef enum
{
RequestIrdsCommit,
/* COMMIT */
RequestIrdsRollback /* ROLLBACK */
} IrdsCloseType;
---------------------- Page: 7 ----------------------
ISO/IEC 10728: 1993/Amd.4:1998(E)
o ISO/IEC
/* Clause 8.2.1 Column data types */
typedef struct
char Year[41;
char Sepl;
char Month[21;
char Sep2;
char Day[21;
) IrdsDate;
typedef struct
char Hour[2];
char Sepl;
char Minute[2];
char Sep2;
Second[2];
char
char Sep3;
char Fraction[3];
} IrdsTime;
typedef struct
IrdsDate Date;
char SepT;
Time;
IrdsTime
} IrdsTimestamp;
typedef
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.