A hypertext system was deemed the most appropriate computational infrastructure to present knowledge resources offered to the learner. In traditional text processing systems, a document is no more than a sequence of character strings which are stored and retrieved in a strictly linear fashion. The essential innovation of hypertext consists in abandoning this linearity constraint. The hypertext approach views a document as a set of text chunks corresponding to conceptual nodes in a database; a system of machine-supported links between nodes and chunks allows interactive branching within and between documents. Hypertext systems exploit more recent computer interfacing technology, particularly window management and graphics tools. Conceptual entities are displayed as windows of text which may contain any number of icons or buttons representing links to other nodes. The user can navigate freely around the hyperdocument by clicking on any of these graphics pointers.
While commercial hypertext shells are available, we have implemented our own hypertext system for several reasons:
The hypertext we developed does not provide new facilities that do not exist on similar systems, its originality is to have a degree of integration with the other system components:
- Building the hypertexts on a commercial shell would lead to portability and copyright problems for the distribution of our system.
- An intelligent learning environment should give an overall impression of implementational coherence; by building our own hypertext tool, we can freely tailor it to share the look-and-feel of the other system components.
- Commercially available systems are usually closed products, and embedding them in a larger system leads to inevitable communication problems.
The underlying position did not only focus on how learners seek for information but also on why they need information. More than a simple technical issue, the degree of integration measures the extent to which the need for information comes from other activities performed within the learning environment.
- `External buttons' can be placed by the designer in any text pane within any window of the learning environment. When the learner clicks on such a button, the relevant hypertext is open at the specific node.
- Rule based agents (or any other program segment) can open the hypertext at a specific node. The choice of the node is based on connections between particular rules (`repair rules') and hypertext nodes.
- A program can be run from the hypertext: `procedural buttons' trigger any procedure built by the designer, for instance some demo or animation illustrating a concept from the hypertext.
The hypertext subsystem is implemented as a class of objects called hypernodes. Each hypernode contains a title and a chunk of text with embedded formatting commands. Moreover, each node has an associated list of keywords summarizing the semantic content of its main text. These keywords serve as the basis of an indexing facility.
A hypertext is written by using a small subset of Latex commands which then have to be compiled in order to be used on-line. We included book structure commands (chapter, section,...). This way an author can combine the advantages of linear and `web' text. A special graphic browser allows to display the linear structure of a hypertext and to jump to a section. Because of the use of a Latex, hypertext documents can be printed easily. For instance, the user manual of Memolab is available both as an on-line hypertext or as a printed document.
The following facilities for `navigation' have been implemented:
Figure 13: A hypertext from MEMOLAB and the `search' facility.
- Nodes and notes
A node is usually a large piece of text (between 1/2 and 2 pages of text), hence this text is displayed in the main pane. A note is a short piece of text that can displayed in the note pane, at the bottom of the window (see Figure 13). Typically, it provides an information that the learner could like to read briefly, without hiding the main node being read.
- Web view
The learner may ask to see the structure of the hypertext displayed as an horizontal tree (menu item `book content'). The learner may ask to view only the portion of the tree locating the node being read within the overall structure (menu items `book context').
The hypertext includes a keyword based search facility: the learner asks for `search' and selects one or more keywords in a special popup window. The system then retrieves all the nodes indexed by these keywords and displays the headers of the retrieved nodes in the `found notes' pane. The learner may click on the node he wants to read. These keywords are defined by the hypertext author.
The three right-hand panes provide various common navigation helps: the `history' pane displays the list of nodes read by the learner, the `context' pane displays the stack of nodes between the node being displayed and the root node, the `found nodes' pane displays the list of nodes resulting from a particular search. The learner may click on any line and jump directly to the related node.