20.01.2014 Views

SIS - Application Programmatic Interface, Reference Manual - ICS ...

SIS - Application Programmatic Interface, Reference Manual - ICS ...

SIS - Application Programmatic Interface, Reference Manual - ICS ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>SIS</strong>-<strong>Application</strong> <strong>Programmatic</strong> <strong>Interface</strong>, <strong>Reference</strong> <strong>Manual</strong><br />

1 Introduction<br />

The <strong>Application</strong> <strong>Programmatic</strong> <strong>Interface</strong> (API) designed and implemented in <strong>ICS</strong>-<br />

FORTH offers a complete set of primitive query and update operators, which<br />

implement frequently used combinations of primitive operations on the server side for<br />

optimization. Stress was laid especially to traversal operations.<br />

In this document we present the set of functions the API consists of, the functionality<br />

of the supported queries and at the end a complete example is presented: A TELOS<br />

model and description is shown and also the source code of an application which<br />

queries according to the model.<br />

API libraries are available in PC versions in C++ and C (Borland 5.01 libraries and<br />

dll) and in Java 1 . In this document we present the C version of the <strong>SIS</strong> programmatic<br />

interface. The differences between C interface and the C++ and Java interfaces are<br />

presented in “Appendix D - C++ <strong>Programmatic</strong> <strong>Interface</strong>” and “Appendix E - Java<br />

<strong>Programmatic</strong> <strong>Interface</strong>”.<br />

2 Querying models<br />

An application which wants to retrieve and/or modify information from a data base<br />

created with the TELOS language can use an application programmatic interface<br />

offering a collection of primitive access and update functions rather than<br />

accessing/updating the data of the base with primitive reads/writes from the files.<br />

This would require knowledge of how the objects are stored into the base something<br />

that is not required with the application programmatic interface (hereafter called API).<br />

There are two implementations of the API, fully compatible one to the other, meaning<br />

that an application which uses the API can be compiled with any of the two libraries<br />

which implement the same functions with the same functionality but with a difference<br />

described below (see figure 1).<br />

1 There were also available in UNIX platforms (e.g. Solaris, AIX, etc.) but due to luck of market<br />

interest the porting to the platforms above was abandoned.<br />

August 2002/v2.2.2 -5- <strong>ICS</strong>-FORTH

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!