Developers of Intermedia were interested in developing a multiuser hypermedia framework whereby hypertext functionality could be handled at the system level - linking would be available for all participating applications [Haan et al., 1992]. They proposed "The IRIS Hypermedia Services" to provide an integrated desktop environment for hypermedia applications such as InterWord, InterDraw, InterVal, InterVideo, and InterPlay. These services contain the following components: Intermedia Layer, Link Client, and Link Server. These components are independent of both operating system and Graphical User Interface.
The documents themselves are stored as Unix files while the link and anchor data are stored in a DBMS. The Link Client, the Link Server, and the DBMS together form the Link Engine. The Intermedia Layer is responsible for all live data manipulation while the Link Engine is responsible for the storage and retrieval of link data. With such an approach Intermedia documents could be interchanged with KMS using the Dexter Interchange Format (described in Section 3.?).
According to Intermedia researchers, following are the requirements to make hypermedia an integrated part of the computing environment:
In order to provide an integrated desktop with full hypermedia functionality, Bieber has proposed a system-wide hypermedia engine based on the notion of a generalized hypermedia using bridge laws (See Chapter 2, Section 5 - Dynamic Hypertext) [Bieber, 1993]. This engine would bind independent back-end applications such as Decision Support Systems, Expert Systems, Databases and front-ends (interface-oriented applications such as word processors, graphics packages) through message-passing mechanisms. Bridge laws map the objects defined in the back-end such as models, variables, calculations to objects in the front-end such as nodes, links, and link markers.
Bieber has suggested the following front-end and back-end requirements for system-level approaches to hypermedia integration or client/engine cooperation.
Similar to Intermedia's Link Engine and Bieber's Hypermedia Engine, Sun's Link Service offers an extensible protocol to create and maintain relationships between autonomous front-end applications [Pearl, 1989]. Similar to the approaches seen earlier, editing and storing of data objects is managed by independent applications which also provide some amount of front-end operations on links. The Link Service stores only the representations of the nodes rather than the nodes themselves. Thus, the definition and granularity of nodes are left to the individual applications. Also, the storage of node data is independent of the storage of link data.
The Link Service makes it easier for applications to add hypertext functionality by providing a simple protocol, a shared back-end or link server, a library, and utilities to manage the link database (See Figure 6.2). Applications communicate with the link server through the Link Service protocol. This service allows independent applications to integrate linking mechanisms into their standard functionality and become part of an extensible and open hypertext system. Existing text and graphics editors can be integrated into such a framework without any modifications. Due to the separation of node and link data, the Link Service does not provide version control, node content editors, concurrent multi-user access, or other forms of data integration.
Some of the issues involved in developing such an open hypertext system include the following: [Pearl, 1989]