ERCIM News No.35 - October 1998

GEN.LIB - An Approach to Object Persistence

by Jaroslav Pokorny

GEN.LIB is a library managing a persistency of application domain objects using relational database servers. It is also able to present rows of external (by other application maintained) tables as C++ objects. Thus, GEN.LIB is, in general, a part of the client application, which provides an interface between two different paradigms: a bridge between object oriented paradigm on side of the client, and a relational database server on the other side.

GEN.LIB has been developed as a part of the European ADDORE project (Application specific Depository of Object ORiented Environment) organized under the COPERNICUS programme. The ADDORE Consortium involved the Charles University, Czech Republic and the companies DCIT, Czech Republic, IQSOFT, Hungary, and Objectif Technologie, France. The project started in January 1995 and has been completed by the end of 1997.

GEN.LIB represents a stand-alone library usable without the rest of the ADDORE project. Its primary purpose was to implant the Rumbaugh’s OMT methodology of OO analysis and design into the environment of building business applications. The GEN.LIB part of the projects provides a support for persistence of C++ application objects and some possibilities to use relational tuples as objects in C++ programs. Moreover, some higher non-procedural querying capabilities are available in GEN.LIB. Concerning research motivations, we followed three well-known approaches to object persistence:

The GEN.LIB addresses many of above trends. The library gives at least a possibility:

In order to respect the ADOORE project objectives we should accept a set of common general requirements that increase the quality of the library. These requirements focus on the database aspects of GEN.LIB and are listed below:

The prototype has been implemented on SUN stations connected with ORACLE server (Version 7). The library is fully functional. This fact is confirmed by using the library in WISE system (a workflow simulator and editor) implemented in DCIT. We must emphasise that the above set of functionality constitutes a compromise between all the needs of the future applications that will be developed using GEN.LIB. As a consequence, an important requirement of GEN.LIB was its flexibility: the analysis of the library as well as its design took into account the possible and reasonable extensions foreseen by its future users.

More information available on website:

Please contact:

Jaroslav Pokorny - CRCIM / Charles University
Tel: +420 2 21 91 42 65

return to the contents page