Functionality of Linguistic Front-Ends
for Object-Oriented Database Systems

The aim of this text is to show the functionality of linguistic front-ends for present and future object-oriented database systems.
These are resulting from three fields of research: 'post-relational data models', 'object-oriented technology' and 'conventional database systems'. These components, which greatly influence the power and complexity of application programming interfaces, are described, and a suitable conglomerate is developed. Different object-oriented concepts of name identical features in programming languages and database systems are outlined. A conceptual basis for an appropriate database language is covered, which includes the structural and operational part as well as higher order constructs and database specific concepts. Upon these fundamentals, algebraic, SQL-like, functional and rule-based query languages are presented and assessed. Host language embedding is introduced and sufficient programming languages for this purpose are examined. Finally, database programming languages, which are divided into 'supersets of existing programming languages' (based on Smalltalk and C++), 'pure database programming languages' and 'a program object approach', are discussed. For all database language types, some selected commercial and experimental systems are presented briefly.
In conclusion, it can be said that the proposed conceptual basis covers minimum requirements for (future) object-oriented database systems. Host embedding is becoming less important, because solutions to avoid impedance mismatch exist: Query languages and database programming languages will dominate, in co-existence. While query languages are mainly SQL-like, database programming languages will be either C++ based or pure.