ConceptBase 7.0 follows a client-server architecture. Clients and servers run as independent processes which interact via inter-process communication (IPC) channels (Fig. 1-1). Although this communication channel was initially meant for use in local area networks, it has been used successfully for nationwide and even transatlantic collaboration of clients on a common server.
The ConceptBase server offers programming interfaces that allow to build clients and to exchange messages in particular for updating and querying object bases using the Telos syntax. We provide support for C, Java, TCL, and Prolog. Detailed descriptions of the interfaces and the corresponding libraries that are delivered with ConceptBase can be found in the ConceptBase 7.0 Programmers Manual.
Figure 1.1: The client-server architecture of ConceptBase
ConceptBase comes with a standard graphical usage environment ( CBjavaInterface) implemented in Java which supports editing, ad-hoc querying and browsing of O-Telos object bases. The user interfaces of ConceptBase can serve for the user as an example client for programming own application specific client tools. Although ConceptBase provides multi-user support and an arbitrary number of clients may be connected to the same server process, ConceptBase does not yet support concurrency control beyond a forced serialization of messages.