Hypertext & Hypermedia: Definition
This is a longer version than the published version:
Bieber, Michael, "Hypertext," Encyclopedia of Computer Science (4th Edition), Ralston, A., Edwin Reilly and David Hemmendinger (eds.), Nature Publishing Group, 2000, 799-805.
[on-line] http://web.njit.edu/~bieber/pub/cs-encyclopedia/csencyclopedia00.pdf
Michael Bieber, New Jersey Institute of Technology
bieber@njit.edu; http://web.njit.edu/~bieber
Draft Version 2.0 - Do not cite
Hypertext is the concept of interrelating information elements (linking pieces of information) and using these links to access related pieces of information. (An information element or node can range from a single idea or chunk to an entire document.) A hypertext is a collection or web of interrelated or linked nodes. A hypertext system allows an author to create the nodes and the links among them, and allows a reader to traverse these links, i.e., to navigate from one node to another using these links. Typically hypertext systems mark link access points or link anchors in some manner within a node when displaying it on a computer screen (e.g., underlined text displayed within documents on World Wide Web browsers). When the user selects the link marker, e.g., by clicking on it with a mouse cursor, the hypertext system traverses to and displays the node at the other end of the link. If a single link marker represents multiple links, the hypertext system may present the user with a list of available links. (System designers may have to rank, filter or layer this list if the number of possible links might overwhelm the reader.) Hypertext user interface design principles recommend that authors label the link marker if the links purpose or destination is not clear. Hypertext systems include many navigation, annotation and structural features, which take advantage of the node and link structure to support authors and readers. These components and features are described further below.
Many people consider the terms hypertext and hypermedia synonymous. Nominally hypertext refers to relating textual elements, while hypermedia encompasses relationships among elements of any media type. The concepts are identical, though hypertext is more difficult to implement in non-textual media.
Hypertext, when well designed, enables people to read, author and comprehend information more effectively than traditional documents. People typically read documents from start to end, i.e., in a linear, sequential manner. Paper constrains authors to compose information in a linear format. By tradition as well as from the need to print, many write computerized documents in a linear format. Hypertext frees readers and authors from this linear, sequential form of expression. Authors can structure information as a web of information chunks and interrelating links. For example, authors could place their main idea or an overview in an entry-point chunk (node) with multiple links connecting logical next steps or related tangential information chunks. Presenting information as a web enables readers to access information in the order most appropriate to their purposes. Hypertext links and structural features enable authors to provide a rich context of related information around elements. As a side effect, through the process of crafting an information structure of nodes and links, authors often come to understand the information better. For readers, freedom of access within a web enhanced with contextual information provides a richer environment for understanding the information they find. Many believe that hypertext also enhances comprehension because it mimics the associative networks that people use cognitively to store and retrieve information.
Hypertext concepts can supplement other computer applications. Applications can provide links within screens and documents to related information, and can implement hypermedia navigation, annotation and structural features to provide additional context and increase comprehension. Hypertext constructs can be predefined or can be generated dynamically as an application executes.
Historical Perspective
Hypertext is not a new concept. In what researchers consider the first article on hypertext, in 1945 Vannevar Bush proposed the mechanical Memex system, which would maintain links and annotations over printed materials [1]. In the 1960s Theodor Holmes Nelson coined the terms hypertext and hypermedia. Nelson envisioned a world-wide integrated document base of hypertext-linked information that all people would be able to access and work within. While Nelson laid out the specifications for his Xanadu system in the 1960s, the first working prototype appeared only in the late 1990s. Douglas Engelbart demonstrated NLS/Augment, the first distributed, shared-screen, collaborative hypertext system at the 1968 Fall Joint Computer Conference. At the same time, Adreas Van Dam was developing Fress at Brown University. Other prototype and commercial hypertext systems appeared in the 1970s and 1980s, including Document Examiner, gIBIS, Guide, Hypergate, HyperTIES, Intermedia, MacWeb (by LIRMM), Max, Neptune, NoteCards, PHIDIAS, StorySpace, Writing Environment and ZOG/KMS. (Many still disagree about whether Apple Computers HyperCard is a true hypertext system, as it lacks many of the navigation, annotation and structural features that characterize true hypertext systems. Several hypertext applications, however, have been built using HyperCards infrastructure.) Intermedia was used for many years at Brown University to teach English and Biology courses [11]. The first major hypertext research conference, ACM Hypertext87, was held in April 1987 in Chapel Hill, USA. Biannual at first, the hypertext research community now meets every year at this conference.
Until the 1990s, the vast majority of hypertext systems were standalone, non-distributed systems. In the early 1990s, HyperG (now called HyperWave) and the World Wide Web (WWW) appeared¾ the first distributed hypertext systems to take full advantage of the Internet after NLS/Augment. Some feel that like HyperCard, the WWW (or more precisely, HTTP, TCIP and HTML) lacks many hypertext features, though again, many true distributed hypertext features and applications have been built upon its infrastructure. As the WWW gained prominence, increasingly the research-oriented hypertext systems of the 1990s were migrated to or were developed directly for the WWW environment. ACM SIGLINK (renamed in 1998 to ACM SIGWEB) formed in the early 1990s [9]. SIGWEB is the major professional society for researchers and practitioners interested in hypertext and World Wide Web. Seminal works in the hypertext field include [1, 2, 3, 5, 6, 7].
Hypertext Components: Nodes and Composites
Hypertext components include nodes, links, link anchors, link markers and composites. Hypertext nodes contain the content and attributes of information elements. Approximately half of the hypertext systems before the 1990s used fixed size windows without scroll bars. Their designers believed that hypertext nodes should contain a single chunk of information, i.e., a single idea. The others supported entire documents as individual nodes. Many models of hypertext support composite nodes, i.e., a distinct set of nodes, perhaps with interrelating links. An example would be a book of separate chapters or a car of many components. The entire composite can be treated as a single high-level node. Links can be made to the composite or to any of its component nodes.
Many hypertext systems allow nodes to have semantic types, such as "description" or "letter of complaint," which they display with the node, as well as in maps and overviews of the hypertext web to help orient the user. Node types also may correspond to specific templates or forms that structure their internal content. People can use types in structural search to describe the nodes they seek. Several researchers have proposed taxonomies of node types. Some are detailed and domain-specific. Others are generic, used primarily for theoretical explanations, such as "proposition" and "collection."
Hypertext Components: Link Anchors and Link Markers
Links connect entire nodes, but they focus on a particular aspect of each node endpoint. Link anchors specify a particular target area within each node corresponding to this aspect. Users typically do not see the link anchor, which is embedded in the nodes internal code (e.g., HTML) and often contains internal parameters such as how to find its link. Instead the hypertext system displays a link marker that users can select to activate the anchor and traverse its link. On WWW browsers, blue underlined text often marks a link anchor. For example, a link might connect two newspaper articles if they both mention the same person. The persons name is associated with an anchor in each of the two nodes internal code. On the computer screen, the hypertext system highlights the persons name as a link marker whenever it displays one of the articles on the screen (perhaps incorporating the link label: "another article about Ms. X"). Selecting the marker activates the anchor. The system retrieves the anchors link, determines the destination node and displays it, scrolling to the persons name in the second article. Many hypertext systems will highlight the destination link marker or target area in some special way (e.g., displaying it in a different text style or flashing a box around it several times) to draw the users attention to the focus of the link just traversed. Note that in this case, the system also should highlight the destination link marker as a possible departure link marker, so users can traverse the link in both directions. A single link anchor and marker can represent multiple links. When selected, the hypertext system displays all relevant links and the user can choose among them. A few hypertext systems support overlapping link anchors and markers. When the links focus truly encompasses the entire node, then the link anchor includes the nodes entire content. The hypertext system should indicate the existence of any links leading from that node, and that the entire node is the destination target area when traversing to it.
Hypertext Components: Links
Links represent relationships among nodes. As with nodes, links may have semantic link types (e.g., "supporting evidence for" or "criticism of") and associated keywords. Many hypertext systems display semantic link types as labels near the links marker in nodes, and within maps and overviews. This can orient users by showing how nodes are interrelated, and can help them decide whether to traverse particular links. Users also may specify link types and keywords within structural search queries for nodes with specific relationships. Hypertext researchers have developed several general and theoretical link taxonomies.
Links can have link behaviors attached. Traversing them executes an associated action. For example, traversing a "display code" link to a computer program would list its code, whereas traversing an "execute" link would run the program. Hypertext webs also can represent processes to take advantage of hypertext features, representing process steps with nodes and transitions as links. Traversing these "transition" links enacts the process steps.
Many hypertext systems treat links as first class objects in their own right, i.e., giving links identifiers and attributes, and storing them in external linkbases or link databases so they can be reasoned about. Systems keeping links in external linkbases often include an anchor identifier with no link information in anchors. When the user selects a link marker, the system looks up its anchors corresponding link, often using an independent link service. External linkbases facilitate bidirectional linking (traversing a link from all endpoints), structural search, link evaluation (e.g., checking that all link endpoints exist), and maintaining links over documents for which one does not have access permissions to embed an anchor in the departure node. In the latter case the system embeds link anchors in node content as it passes the node to a browser for display.
Transclusions, warm links and hot links all connect two instances of the same information. Transclusions (or inclusions) enable the exact same node or anchor to appear in multiple places. Whereas copying and pasting creates an identical copy, transclusions essentially are pointers that connect the original to places that use it. Through transclusion, readers always have access to the original element and therefore to its original context, which can facilitate deep intercomparison. Xanadu's virtual document structure is built around transclusions: each document is a list of pointers to pieces of data, which originate in that document or are "included" from others. Warm links and hot links are not pointers, but connect actual copies of their anchor content. With hot links, when the content of one anchor changes, the hypertext system automatically updates all other copies immediately. With warm links, the system asks the users whether to update the other copies.
An n-ary link interrelates more than two nodes. For example, a "teacher" node can have an n-ary link to all students in a class. A "chemical bond" link could connect nodes representing each of a molecules elements. Traversing an n-ary link would lead to any other or all destination node simultaneously.
Some models of hypertext do not contain links explicitly. Instead, they handle links implicitly. Set-based hypertext also could support the teacher and chemical bond examples, treating a class or molecule as a set of elements. Spatial hypertext uses pattern matching to interrelate nodes positioned near each other spatially or sharing the same virtual composite and attribute structure. Both support other hypertext functionality using these implicit links.
Large numbers of links can lead to the well-known problems of cognitive overhead and disorientation. Cognitive overhead occurs when readers feel overwhelmed with too many choices of where to navigate next. Disorientation occurs when readers lose track of their position within the hypertext web while traversing links. Both can be avoided by using good user interface design principles; semantic node and link types; filtering based on user task and preferences; and hypertext navigation, annotation and structural features.
Hypertext Features
The hypertext navigation, annotation and structural features build upon the hypertext constructs of nodes, links, anchors and composites. Hypertext navigation features transport the user among information elements. They include browsing (link traversal), backtracking, standard content-based query, and structural query based on interrelationships. An example of a structural query is "find all nodes of semantic type product information within two links distance of any node of semantic type legal advice where one of the connecting links has the semantic type prohibited by or the keyword urgent."
Backtracking serves four purposes: to return to a prior position in a web (which allows users to safely take "detours" from their main task), to review the content of a previously visited node, to recover from a link chosen in error, and as part of undoing. Backtracking differs from undoing, however, in that backtracking returns the reader to a previously visited node in its current state. Parametric backtracking, written as "go-back(X)", allows the user to specify a value for a node attribute in parameter X, which causes the system to backtrack to the most recently departed node with that attribute value. Conditional backtracking, written as "go-back(query-expression)" evaluates an arbitrary query-expression and returns the reader to the most recently departed node satisfying it. Displaying a history list of previously visited nodes, and then selecting one of these backjumps the user to that node. When implementing the history list as a stack, backjumping removes all nodes in-between from the history list. When implementing the history list as a session log, backjumping adds the prior node to the list (though some systems then remove it from its prior position in the log). Authors can construct guided tours and trails directly from session logs.
Annotation features include bookmarks, landmarks and comments. Bookmarks are one-way links from the readers desktop to nodes they wish to access easily. Landmarks are one-way links from everywhere to a specific place, such as a home page. Landmarks typically remain permanently in view. Authors create landmarks, whereas readers create bookmarks. Bookmarks essentially are personal landmarks.
Structural features enable navigation through local and global overviews, and along recommended paths and guided tours of interrelated items. Overview diagrams (or maps) provide a graphical view of the hypertext web, usually with the nodes as icons and the links as arrows, often showing node names, and node and link semantic types. Global overview diagrams provide an overall picture; local overviews provide a fine-grained picture of nodes local neighborhood. Both provide spatial context and reduce disorientation. Readers can traverse directly to a node by selecting its icon.
Trails or paths connect a chain of links through an information space. They provide a context for viewing and understanding a series of nodes. They can record a path of information to remember or share. They can suggest a subset or ordering of nodes within a hypertext web, which can reduce cognitive overhead. Authors can prepare multiple "recommended" trails, each focusing on a different aspect of a web or tailored to different readers (a novice, an expert, etc.) Guided tours are restricted trails with link anchors that lead away from the trail dimmed or hidden. Users have to suspend or exit the tour to access these. Trails can contain branches allowing the reader to choose among subpaths. Hypertext systems often display and highlight trails in an overview diagram, so readers can maintain their orientation.
In multi-user hypertext systems, each hypertext construct and feature can have access permissions specified, e.g., for being created, modified, deleted, linked to, and commented upon by an individual, work group or the general public.
The hypertext community strongly believes in the reader as author. All readers should be able to add their own annotation and structural features, as well as additional links to all nodes in any hypertext web.
Degradation or loss of relevance poses an important problem for hypertext links, comments and other features. No mechanism exists for determining when a comment, for example, has lost its relevance or correctness.
Hypertext Subfields
The hypertext research community comprises several subfields: adaptive hypertext, hypertext design, evaluation, writing, hypertext functionality, open hypertext systems and standards. Adaptive hypertext systems employ a user model to customize node content and filter the available link set. Adaptive hypertext systems try to guide users towards interesting and relevant information and shield them from irrelevant information. Hypertext design concerns analysis and design methodologies for creating hypertext systems. Hypertext design differs from standard design techniques due to its emphasis on links as first class objects and navigation. Evaluation techniques judge the ability for users to navigate effectively within a hypertext web and remain oriented when jumping into the web at random (e.g., to a node found by a search engine). Authors of hypertext literature (novels, short stories and poetry) work in a non-linear creativity space in which they design not only content, but also link structure, structural features and navigation. The Hypertext Functionality group (HTF) [4] studies techniques for applying hypertext constructs and features to the everyday, non-hypertext applications found in business, engineering and personal applications. The Open Hypertext Systems group (OHS) studies ways for different hypertext systems to coordinate information and services over the Internet [8]. Such interoperability, for example, would allow one user to start a link using one hypertext system and a second user to complete the link using a different hypertext system on a separate computer.
Four major standards efforts exist in the hypertext community. HyTime is an extension of SGML for specifying common hypertext concepts that sets of multimedia SGML documents can share. Due to its complexity, HyTime was never widely used for hypertext. The Dexter reference model provides a detailed model of hypertext components. Several hypertext systems are based on Dexter. The Open Hypertext Systems group is developing an Open Hypertext Protocol (OHP) for passing messages and sharing hypertext services among interroperating hypertext systems. Several hypertext systems have been made OHP-compliant. Many hypertext researchers are active in the World Wide Web Consortiums various standards efforts [10]. The WWWs XML, XLink and XPointer standards are being crafted to add support for more sophisticated hypertext constructs and features to the World Wide Web.
Hypertext fills a conceptual niche related to, but separate from fields such as databases, digital libraries, document management, information retrieval, multimedia, object-orientation, semantic networks, user interface design and the World Wide Web. Many of these either use hypertext, complement hypertext or can be used to implement hypertext components and features.
References
[2] Conklin, E. Jeff, "Hypertext: a Survey and Introduction," IEEE Computer 20(9), 1987, 17-41.
[3] Halasz, Frank G., "Reflections on NoteCards: Seven Issues for the Next Generation of Hypermedia Systems," Communications of the ACM 31 (7), 1988, 836-855.
[4] http://www.ep.cs.nott.ac.uk/~hla/HTF/
[5] Malcolm, Kathryn C., Steven E. Poltrock and Douglas Schuler, "Industrial Strength Hypermedia: Requirements for a Large Engineering Enterprise," Hypertext '91 Proceedings, San Antonio, 1991, ACM Press, 13-24.
[6] Nelson, Theodor, Computer Lib/Dream Machines, 1974. (reprinted by Microsoft Press in 1987)
[7] Nelson, Theodor, Literary Machines, 1981.
[8] http://www.csdl.tamu.edu/ohs/
[9] http://www.acm.org/sigweb
[10] http://www.w3c.org
[11] Yankelovich, Nicole, Bernard J. Haan, Norman K. Meyrowitz, and Steven M. Drucker, "Intermedia: The Concept and the Construction of a Seamless Information Environment," IEEE Computer, January 1988, pages 81-96.