Java Hypermedia: On and Beyond
the World Wide Web
Antoon Verhoeven and Kai Warendorf
{toonv |}
Intelligent Systems Laboratory
School of Applied Science, Nanyang Technological University
Blk N4 Nanyang Avenue #2A-36, Singapore 639798


The World Wide Web (WWW) has made hypermedia applications widespread. Originally, the WWW was used only for ‘freestyle’, unrestricted browsing and its foundation technologies reflect this. Now, developers are working on more advanced hypermedia for new application domains. Improvements in graphical user interfaces, adaptive guidance, and integrated navigation support are the main objectives. In this paper, we present Java as a mature implementation language for advanced Internet hypermedia. A Minimalistic Java Approach (MJA) towards development is introduced. MJA integrates Java with existing object-oriented hypermedia design methodologies. MJA is illustrated with HyperMap, a browser application for spatial hypermedia.


Advanced hypermedia, Java application development, WWW

1 Introduction

In recent years, the World Wide Web has been the driving force behind the rapid expansion of hypermedia on the Internet. WWW browsers have evolved from basic hypertext viewers to multimedia platforms. HTML (HyperText Markup Language), the standard WWW authoring language, has evolved along from version 1.0 to 3.2 to incorporate new hypermedia elements and formats for audio and graphics, together with interactive fill-in forms. ‘ Plug-in’ browser components have made it possible to include 3D-vector animation, audio and video streams, and various data formats and external helper applications in WWW hypermedia. Support for scripting languages in both WWW clients and servers has made WWW content interactive and in some cases even adaptable. The ability of WWW browsers to execute small applications or applets has further increased user interaction with WWW hypermedia.

A survey into hypermedia and intelligent tutoring systems literature in [23] indicated the growing role of hypermedia in training and educational software systems. WWW hypermedia is increasingly integrated in knowledge-based educational systems, as well as in standard courseware [13], with the WWW as a practical standard for distance learning through hypermedia.

On the Internet, most hypermedia applications are based on the WWW infrastructure for hypermedia. It consists of WWW browsers, servers, and HTML as the document language. For some categories of hypermedia applications, WWW hypermedia contains several limitations. Especially for education, the Web’s unguided, ‘freestyle’ nature of WWW browsing can be unproductive. Empirical research into the browsing behaviour of students has confirmed that confronting students with a hypermedia application does not guarantee effective learning [8, 9]. Additionally, in complex information retrieval tasks where efficient navigation through information spaces is important, WWW browsers are often too generic. The limited user interface of browsers, combined with the text based layout restrictions and inflexible hyperlinks in HTML, do not support major variations between different types of hypermedia applications.

The functionality of WWW browsers and servers is still expanding, mostly aimed at integration with other inter- and intranet applications. A WWW scenario by Netscape Inc. [22] suggests that mostly new communication functions for the intranet will be added to the next generation of WWW browsers. In this and similar outlooks to WWW extension, the hypermedia functionality of browsers will remain basically unchanged, with HTML as its foundation. Future innovations of WWW browsers to improve the basic method of WWW browsing are not expected. In addition, the Hyper-G initiative [15] and similar projects to fundamentally improve the architecture of the WWW do not identify the necessity of substantial revisions or additions to the hypermedia browser.

Before Java’s introduction in mid-1995, developers of advanced Internet hypermedia had the choice to either build on the WWW infrastructure, or alternatively develop a complete set of Internet hypermedia protocols by themselves. With the availability of Java as a complete implementation language for Internet hypermedia development, the feasibility to develop highly customised Internet hypermedia for specific application domains has improved considerably. This paper identifies the issues for development. With Java, hypermedia development shifts from integration towards implementation. The approach that we have found effective for Java-specific application development, named the Minimalistic Java Approach (MJA), addresses the methodological issues from development in Java. First however, examples are given of WWW that have been extended for non-trivial hypermedia applications.

2 Extensions of WWW Hypermedia

A growing research area, which aims to improve the usability of hypermedia, is adaptive hypermedia [2]. In adaptive hypermedia, the user is offered knowledge-based navigation and guidance. The guidance is based on information regarding the user’s knowledge, priorities, and browsing history. Through guidance, adaptive hypermedia aims to improve information searching in large information spaces for users who vary in expertise and information needs. User modelling is the key to provide adaptation for education, on-line help, and information searching. Searching benefits from the creation of a personalised view on the information space.

During user modelling, a model of the user’s knowledge and preferences is formed and updated from data generated by the user’s actions. The data is analysed, usually in combination with a knowledge base, to detect the preferences and knowledge level of the user. Adaptation algorithms give user feedback, and filter and hide hypermedia links, based on information derived from the user model.

Adaptive hypermedia on the Internet is usually implemented as WWW hypermedia. Extensions to advanced WWW hypermedia can be categorised as user support through adaptation, and user support through increased interaction with the browser or its hypermedia content. Following are examples from both categories.

2.1 Adaptive WWW Hypermedia

An example of an adaptive educational WWW system is ELM-ART [3], a hypermedia application that teaches Lisp programming. Students use standard WWW browsers to answer questions in HTML forms, after which the HTML server processes their answers. Based on the correctness of the answers, the server applies its knowledge base to generate HTML pages that provide the personalised feedback. A similar educational WWW system for C programming in [20] is also based on fill-in exercises. After completion of one exercise, students continue with exercises that have been adapted to their knowledge level.

These and most other Internet hypermedia applications are implemented with standard WWW browsers as hypermedia clients. However, especially in educational hypermedia it is often necessary to limit the learner’s freedom to navigate anywhere in the information space. This was achieved with WWW hypermedia in an educational hypermedia for road sign education [17]. The tutoring system could hide the browser to prevent subsequent browsing. This was achieved by encapsulation of the browser in another application. However, for Internet users with standard browsers, the maximum external control over the hypermedia browsing process is limited.

2.2 Extended User Interface of WWW Hypermedia

An example of an extension of WWW hypermedia content is a custom developed WWW browser that allows the inclusion of interactive components named meme pads in ordinary HTML pages [21]. The compound document types were designed to be saved, modified, and copied into other documents, in order to support collaboration over the WWW. Because the meme media browser was based on HTML as the central hypermedia document language, it resembles ordinary WWW browsers. Compatibility with HTML hypermedia was maintained for compatibility with existing WWW documents.

A more commonly used method to extend a WWW browser is to add a helper application. Helper applications are executed by a WWW browser to display certain file formats. An example of a helper application to view and edit concept maps from a WWW browser can be found in [6]. A drawback of helper applications is that they are platform dependent, and that a user must have the helper application installed previously.

An alternative for helper applications is Java applets. Theoretically, since applets are platform- independent and run in all major WWW browsers, they offer considerable potential to extend HTML hypermedia. However, applets have not been applied widely as helper applications or to provide integrated navigation support and guidance. This is largely due to restrictions in applet scalability and file access limitations of applets caused by browser security measures.

2.3 Limitations of WWW Hypermedia

In the systems mentioned in section 2.2, Internet hypermedia is mainly restricted to WWW browsers and HTML-based hypermedia. For developers, to base Internet hypermedia on HTML and existing WWW browsers has the advantage of an existing WWW infrastructure and availability of components and hypermedia authoring tools. For users, advantages of the WWW are the wide availability and familiarity with WWW browsers. However, a WWW-centred approach also has drawbacks, such as:

These three drawbacks for WWW hypermedia development impede realisation of more advanced WWW hypermedia. With advanced hypermedia, we refer to hypermedia with the following characteristics:
    1. adaptive to a user’s specific knowledge, preferences, and information retrieval goals;
    2. more adaptive functionality in the browser instead of in the hypermedia server; and
    3. able to provide direct navigation support through an application-specific Graphical User Interface (GUI).
We identify an application-specific GUI as essential in advanced Internet hypermedia. Although the examples in sections 2.1 and 2.2 show that the WWW can be extended, the extensions suffer from platform dependence in the case of ‘plug-in’ extensions and helper applications, and from architectural weaknesses in both HTML and Java applets. In order to be used on the Internet, an alternative implementation has to include Internet functionality comparable to WWW hypermedia. With Java, a complete and Internet-oriented programming language, a feasible alternative for hypermedia implementation has become available. With standard support for the HTTP and the Uniform Resource Locator (URL) protocols from the WWW, Internet hypermedia applications implemented in Java can access existing WWW servers. With Java, hypermedia development can focus completely on the hypermedia client application.

3 Java on the Internet

The programming language Java, (not to be confused with JavaScript, a simplified Java derived scripting language for WWW browsers) became available in 1995 with the Java Development Kit (JDK) 1.0.2. One of its co-developers described Java as a "simple, object-oriented, multi-threaded, garbage-collected, secure, robust, architecture-neutral, portable, high performance, dynamic language" [7]. Soon after its introduction, WWW browsers were updated to include applets, small Java programs, in HTML documents. First through applets, and later through complete Internet applications, Java has become widespread on the Internet. Its built-in support for URLs and the HTTP protocol allows Java applications to access standard WWW servers. These and other innovative features of Java have improved the feasibility of development of Internet hypermedia that does not relay on a WWW browser for a hypermedia client.

3.1 The early State of Java

After the release of the JDK version 1.0.2, Java has been criticised by developers for several weaknesses:

These limitations have delayed the development of real-world Java applications beyond applets. In addition, the usability of applets suffered from their limited size to minimise downloading delays, and from file access restrictions. To address these shortcomings for a robust and stable application, development of both the language, its compiler, and the Java runtime environment continued.

3.2 The present state of Java

In the major first revision of Java with the JDK 1.1 release in February 1997, many of the shortcomings of version 1.02 had been improved upon or eliminated. Platform independence improved through elimination of platform dependant bugs. The core package of Java libraries had almost doubled the number of classes. Program execution speed also improved, though is still below native execution speed.

Currently, distributed Java applications are already used on the Internet, with the introduction of Marimba [12] as the main example. These and other ‘push technology’ applications for continuous information retrieval are based on the concept of tuners and transmitters. They do not extend current WWW browsers , but instead include their own client application. They are not intended for hypermedia retrieval, but illustrate the potential of Java-based Internet applications.

3.3 Evolution versus Revolution

More than two years after the introduction of Java, its maturity level as an Internet-oriented hypermedia platform creates new opportunities for advanced hypermedia on the Internet. Since Java programs are platform-independent, they have a potential user base that is comparable in size to the WWW. Instead of an evolutionary approach based on improvement of general-purpose WWW hypermedia, we propose a more revolutionary approach (Figure 1), in which both the design of an application-specific hypermedia client and a hypermedia document format are key activities.

Figure 1 Improvement or replacement: Limits of extendibility of WWW browser limits further evolution and specialisation of WWW hypermedia.  By partly abandoning WWW standards, the restrictions from HTML, applets, and from the browser user interface can be eliminated. However, adherence to the WWW hypermedia protocols HTTP and URL is advantageous for Internet hypermedia. It allows custom hypermedia client to remain compatible with existing HTTP servers, thus avoids design of a custom hypermedia server.

3.4 Four key Java 1.1 Extensions

Following is a description of four technologies that are standard in the core Java 1.1 runtime environment, as released in the JDK 1.1. Although not an official standard, Java 1.1. here refers to the Java features as found in the JDK 1.1 release. The four Java 1.1 technologies mentioned here are key extensions because they enhance the potential of Java applications considerably, and together offer a combination of features not found in other programming languages.

3.4.1 Remote Method Invocation

Remote Method Invocation (RMI) adds a new communication method for distributed Java applications on the Internet. With remote procedure calls, an application can directly communicate with another application that resides on a different host through a direct procedure call, as if it were one application. With RMI the strict division of functionality between servers and clients is lifted, replacing the need for customised socket-based communication protocols.

3.4.2 Object Persistence

The ability of an applications to store its internal state, known as persistence, allows an application to recreate its internal state on start-up, restoring all settings and modifications made by the user in the previous session. For an object-oriented application, it is advantageous to store and retrieve data as objects. This eliminates the need for a separate database, which may require additional data translation from records to object and vice versa. With the Java 1.1 release, object persistence is standard (for version 1.0.2 an additional library is required). It can be achieved through serialisation, when writing objects directly to a file or stream, or alternatively through externalisation of the object’s properties. With either method for persistence, an application is able to convert data to objects and vice versa with minimal overhead.

3.4.3 JavaBeans Component Model

In Java 1.1 a component model named JavaBeans has been added to the core libraries. A component model provides developers with objects which have more functionality than basic objects. JavaBeans components serve as visual building blocks aimed to simplify implementation of the graphical parts of an application, in particular GUI development

The JavaBeans model supports distributed applications. It brings RMI, object persistence, and event handling together at the component level. A visual Java ‘bean’ can be directly manipulated in any component builder tool that supports JavaBeans. After the component properties are set, the JavaBean component is archived, and later added to any application that supports the component model. The versatility of JavaBeans promotes software reuse and allows interchangeability of development tools. They may become a substantial part of Java implementation because of their potential for reusability of software.

3.4.4 Java Archive File Format

The JAR file format allows Java class libraries, combined with multimedia resources, to be compacted, stored, and retrieved in a single file. The advantage is that only a single connection with the HTTP server has to be established to transfer both application software and data in a single transfer.. The JAR file format speeds up communication with a HTTP server considerably, in particular for resource-intensive applications.

3.5 Availability of Java development tools

There are numerous development tools available for Java developers. Many provide a visual environment with drag and drop activities for GUI design. Some are specialised in applet or JavaBeans development. They may require specific libraries to be included in the final application, which may not be platform independent. A second category of development tools is compilers, which aim to simplify Java programming at the syntactic level. They translate source code in a BASIC or REXX dialect into standard Java source. An example is NetRexx (Figure 2), aimed at programmers with a preference for REXX. NetRexx source is more compact and adds additional string handling functions similar to Rexx. In addition, NetRexx also eliminates the explicit type casting required in Java. The output is standard Java class files.

Figure 2 NetRexx source code: NetRexx and similar compilers offer an alternative for Java’s C-derived syntax. In NetRexx, the syntax is derived from Rexx.

As important as development tools, the availability of well-documented and generally applicable Java class libraries is essential for application development. Aside from the extensions of the standard Java libraries, an increasing number of Java libraries from both research and industry are available. Some libraries provide fast platform dependent features at the cost of platform independence. Platform independence, performance, and compatibility with earlier Java versions are all main considerations for library selection.

In the area of multimedia, Java still lacks functionality for fast processing with graphics and audio, as required for multimedia presentations. Standardised multimedia core libraries have been announced to improve Java in this area. They include libraries for 2D and 3D graphics, image processing, and multimedia players. For the future of Java in media-intensive Internet applications, the performance of the new media libraries is essential.

4 Scenario for advanced Java-based Internet Hypermedia

The Java technology mentioned in section 3 is relevant for Internet application design in general. Here the focus is on hypermedia applications and their distributed architecture.

4.1 Flexible Hypermedia Client and Server Boundary

In the example of WWW hypermedia given in section 2, the HTTP server provides the adaptation of the HTML hypermedia. The server generates personalised HTML documents and sends these to the WWW browser. On arrival, the browser merely displays the hypermedia. Even with the potential of browser scripts and applets, WWW browsers are usually applied as ‘dumb’ hypermedia displays since they do not provide adaptation themselves.

In contrast, for a hypermedia application in Java, it is possible to adapt hypermedia locally at the client side, without interference from a server. In this scenario of local adaptation and buffering, the server only provides the services of standard HTTP servers. With unrestricted file access and storage on a local file system, the hypermedia client can dynamically adapt and buffer both hypermedia content and data for updates of the user model. As a result, the hypermedia client will rely lesson immediate and continuous server access. This helps to prevent delay caused by a slow Internet connection.

A second potential improvement to minimise network delay for a hypermedia client is dynamic server selection. In this scenario, when several mirrored HTTP servers are available, a hypermedia client is able to dynamically compare server access statistics in order to select the fastest server.

A third source of flexibility in distributed architecture comes from remote method invocation. With RMI, a hypermedia client can directly call another Java application anywhere on the Internet. The additional application can perform computational intensive tasks, or provide other services for hypermedia clients. The effect is that the hypermedia client can be kept relatively small with lower processor requirements. Figure 3 display the new options a flexible architecture brings to Java applications.

Figure 3 Flexible distributed architectures: Java hypermedia clients can (1) buffer data and media on local disks, (2) dynamically select the fastest HTTP server, and (3) call remote applications. 4.2 Persistent Hypermedia Content

Persistent storage of hypermedia objects allows not only the application but also the hypermedia content to store its internal state. One advantage is that it simplifies development of collaborative hypermedia systems where users edit the hypermedia content. A second advantage is that interactive persistent hypermedia objects such as clickable maps, multiple choice questionnaires, and navigation aids can store and access relevant data from past user actions. With more data available for user modelling, better feedback and guidance can be given.

4.3 JavaBeans as Hypermedia Components

On the WWW, the basic elements of HTML hypermedia are resource files. The extension of WWW hypermedia with meme media components [21] has demonstrated the added value of component-based hypermedia documents. For hypermedia implemented in Java, JavaBeans can provide a similar component-based hypermedia format that is closely linked to the Java platform. The usage of JavaBeans as hypermedia objects results in hypermedia documents that are compatible with every component based hypermedia browsers. Generic component builder tools can serve as hypermedia authoring tools (Figure 4). RMI, object persistence, inter-component communication and GUI event handling are all available in component-based hypermedia documents. As a result, functionality shifts from the browser towards the hypermedia content. An additional result is that in component-based hypermedia development, the role of hypermedia authoring increases at the expense of the role of programming.

Figure 4. Hypermedia Components Hypermedia components can be applied in any browser with component support. Construction of interactive components is done in generic builder tools. Event handling and persistence in components allow user modelling at the component level. Object-oriented hyper- and multimedia architectures have been proposed before, including interactive hypermedia components [10] and distributed persistent objects capable of RMI [5]. Java and the Internet allow these advanced architectures to be realised on any standard platform linked to the Internet. A comparison between the elements of WWW and Java-based hypermedia is shown in Figure 5.
Figure 5 Comparison between WWW and Java hypermedia structure
4.4    Distribution of Java Hypermedia over the Internet

For a Java application to be accessible for a large number of Internet users, ease of use is a factor. Java applets are directly accessible for WWW users, but as extensions of HTML are insufficient to achieve advanced hypermedia. However, WWW browsers can serve as easily accessible platforms for Java applications. To distribute a Java application, a redesign of the application into an applet, which is immediately accessible for WWW users, is an alternative. Then, the WWW browser only serves as a Java runtime environment. The applet provides the complete hypermedia application, without reliance on HTML and WWW browser features. A drawback is that local file access is lost. Also, loading a complete application of several hundred kilobytes as an applet can be prohibitively slow.

In contrast, a locally installed hypermedia client is available without delays. In the future, when most operating systems have a Java virtual machine integrated (as has been announced by various OS vendors), Java hypermedia applications can be executed immediately from the desktop. Until then, Internet users have to download and install the complete Java application., and the JDK as well. Table 1 summarises the three methods of transferring Java-based hypermedia browsers.

Table 1 Distribution of Java Internet hypermedia  
Executed in 
Multiple small applets in WWW pages WWW browser Only a browser required; 

HTML compatible 

No file access;  

WWW limitations

Single large applet WWW browser Only a browser required  No object persistence & media buffering 
Standalone Application Java Virtual Machine or 

(future) desktop OS.

No download delays; 

persistence & buffering

Requires installation & download or CD-ROM

5 A Minimalistic Approach towards Design of advanced Hypermedia

Development of a Java hypermedia application differs from WWW hypermedia development. Where most conventional WWW applications focus on the server, in advanced hypermedia development the focus is on the client application. In addition, development with Java is not based on existing components but will usually be implemented from the ground up. With Java, application design is more extensive. The object-oriented nature of Java encourages a fully object-oriented design.

We present the Minimalistic Java Approach (MJA) as a framework which links the advanced Internet hypermedia design process with implementation in Java. MJA does not intend to be a general hypermedia design methodology, since several extensive platform-independent methodologies already exists for hypermedia. Instead, MJA is result-driven and specifically aimed towards implementation in Java. It is minimalistic because it does not rely on any specific development tool. All activities in MJA are based on a strong bottom-up and object-oriented approach to software engineering. MJA also recognises that although Java is mature with version 1.1, its libraries are still expanding.

5.1 Consequences of implementation in Java

Four aspects, specific for Java hypermedia, are addressed in MJA. They are the availability of development tools, the hypermedia authoring bottleneck, the specific properties of Java, and integration with existing hypermedia.

5.1.1 Availability of Tools and Components

A large software library exists with freely available ‘plug-in’ extensions, languages, and libraries for WWW browser and servers. In contrast, Java components and libraries for support of existing media formats are rare. This implies that only for hypermedia applications which require a hypermedia format not found in existing WWW hypermedia is MJA worth the extra effort of custom development. When there are no media format requirements, a virtually unrestricted hypermedia specification is possible. The media format is then a main input for a highly application-specific hypermedia design. Sub-optimal generic WWW hypermedia standards approaches can then be avoided.

5.1.2 The Hypermedia Authoring Bottleneck

A second issue for hypermedia development is the central role of the authoring process. With no supporting authoring environment available, realisation of a real world hypermedia application is laborious. This hypermedia authoring bottleneck [16] is a major factor in the success or failure of each new hypermedia architecture. Well-designed authoring tools or adaptation to existing hypermedia standards reduce the bottleneck.

5.1.3 The Specific Properties of Java

Although most development methodologies are language independent, advanced Internet hypermedia without alternatives for implementation then Java does not benefit from language independent design. Instead, design input from Java’s innovative features, will lead to innovative designs that unify RMI, JavaBeans, and object serialisation. Though these techniques not unique on their own, with Java they can be integrated together.

5.1.4 Integration with existing object-oriented Hypermedia Design

Since Java is an object-oriented language, MJA follows the Object Modelling Technique [18] closely. It facilitates integration of existing object-oriented hypermedia design methodologies in MJA. Among various hypermedia design methodology alternatives, two were selected for MJA because both methodologies share a language- and tool independence, as well as full object-orientation.

The Extended Object-Relations Model (EORM) [11] is based on the definition of a class hierarchy of semantically rich relationships. These link classes allow designers to express the complex relations between hypermedia objects in fully object-oriented hypermedia content. The link objects are central in EORM because complex semantic information regarding hypermedia object relations can be stored in a single object. EORM’s relevance for Java based hypermedia design is to improve the conceptual shortcomings of most existing direct and non-semantic hypermedia link models.

The second hypermedia methodology in MJA is the Object Oriented Hypermedia Development (OOHDM) [19]. It is a complete and graphically oriented methodology, specialising in hypermedia user interface definition. For this, OOHD applies graphical notation to define abstract data views, which express user interface dynamics in petri nets. The communication between objects is expressed in configuration charts. With its graphical notation, OOHDM complements EORM, in particular for user interface specification.

Figure 6 The Minimalistic Java Approach (Italicised items are optional, depending on availability) 5.2 The In- and Output of Java Hypermedia Design

MJA follows the waterfall model of software engineering, with seven development phases (Figure 6). The top two layers display the design input elements. The top input layer display is specific for Java; the second layer contains general design input. In the seven phases, Java classes are defined, and after repeated refinements integrated in one of several prototype applications. In MJA, Java source code has a role as a tool-independent design formalism. The language dependency of MJA promotes the direct implementation of abstract concepts from object-oriented modelling, closely integrated with the Java key technologies. The strong bottom-up approach, combined with prototyping and inclusion of two hypermedia design methodologies aims to overcome the incompleteness of abstract object-oriented software design, which is insufficient when used in isolation [4].

6 A Java-based Browser for spatial Hypermedia

As part of ongoing research into hypermedia for tertiary computer science education, we developed HyperMap [24], a browser for spatial hypermedia [14]. HyperMap is based on interactive, graphical hypermedia objects laid out on a large scrollable canvas (Figure 7). For this type of visually oriented hypermedia, text-based HTML was unsuitable. Also, the navigational feature of allowing scrolling in all directions is not feasible without a dedicated spatial user interface. The application required a dedicated browser. Internet access was included for deployment of the browser for distance education over the Internet.

Figure 7 HyperMap: Based on a map metaphor, an interactive scaled map in the right corner provides continuous navigation support during browsing. The user navigates by scrolling the large canvas. 6.1 Selection of the Libraries and Tools

For the HyperMap user interface, the standard Java AWT user interface elements were inadequate. Therefore, the Internet Foundation Classes library was selected for its extra GUI elements and object persistence mechanism, both platform independent and compatible with Java 1.0.2 runtime environments. To remain compatible with existing WWW browsers, no elements specific for Java 1.1 were applied yet.

6.2 System Architecture

HyperMap relies on standard HTTP servers for hypermedia retrieval. When executed as a large applet, authoring is not supported since no local file access is available.

6.3 Multimedia authoring environment

The hypermedia content is fully object-oriented. The objects are persistent and handle their own user events. This allows basic drag-and-drop hypermedia authoring without additional tools. Future improvement will include a migration to Java 1.1, with JavaBeans components as hypermedia content, and a more flexible distributed architecture.

7 Conclusion

We have introduced Java as a mature platform for advanced Internet hypermedia. With its platform independence, continuously increasing multimedia capabilities, and flexible distributed architecture, a hypermedia browser implemented with Java can eliminate various limitations of WWW hypermedia. We introduced the Minimalistic Java Approach as a practical development framework. An Internet browser for spatial hypermedia named HyperMap illustrated MJA and the potential of Java for advanced hypermedia applications on the Internet. In the continuous evolution of the Internet, the emergence of advanced application-specific hypermedia browsers may signal the next step.

[1] C. Brown and S. Benford. Tracking WWW Users: Experience From The Design of HyperVisV, Proceedings of WebNet'96, San Francisco, October (1996), 57-63.

[2] P. Brusilovsky, Methods and techniques of adaptive hypermedia, User Modeling and User Adapted Interaction, vol. 6 no.2-3 (1996).

[3] Brusilovsky, P., Schwarz, E., and Weber, G. (1996) ELM-ART: An intelligent tutoring system on World Wide Web. In C. Frasson, G. Gauthier, & A. Lesgold (Ed.), Third International Conference on Intelligent Tutoring Systems, ITS-96 (Vol. 1086, pp. 261-269). Berlin: Springer Verlag (1996).

[4] T. Bryant and A. Evans, OO Oversold - Those objects of obscure desire, Information and Software Technology, vol. 36 no. 1 (1994) 35-42.

[5] N. Davies, M. Davy, G. Blair, and J. Mariani, Object invocation and management in the Zenith distributed multimedia information system, Information and Software Technology vol. 35 no. 5 May (1993) 259-266.

[6] B. Gaines and M. Shaw, WebMap: Concept Mapping on the Web, World Wide Web Journal, vol. 1 no.1 (1995) 171-183.

[7] A. van Hoff, Java and Internet Programming, Dr. Dobb’s Journal, Augist (1995) 56-61.

[8] M. J. Jacobson, C. Maouri, P. Mishra, and C. Kolar, Learning with Hypertext Learning Environments: Theory, Design, and Research, Journal of Educational Multimedia and Hypermedia, vol 4(4) (1995) ,321-364.

[9] T. Jones and C. Berger, Students' Use of Multimedia Science Instruction: Designing for the MTV Generation, Journal of Educational Multimedia and Hypermedia vol. 4(4) (1995) 305-319.

[10] C. Kacmar and J. Legget, PROXHY: A Process-Oriented Extensible Hypertext Architecture, ACM Transactions on Information Systems vol. 9 no. 4, October (1991) 399-419.

[11] D. B. Lange, An Object Oriented Design Method for Hypermedia Information Systems, Proceedings of the 27th Annual Hawaii Int. conf. on System Sciences (1994) 366-375.

[12] P. Loshin, Tune In, Turn On the Web, Byte, Februari (1997)

[13] A.D. Marshall and S. Hurley, The design, development and Evaluation of hypermedia Courseware for the Worlds Wide Web, Multimedia Tools and Applications, vol. 3, no. 5-31, 1994.

[14] C. C. Marshall and F. M. Shipman III, Spatial Hypertext: Designing for Change, Communications of the ACM, vol. 38, no.8, (1995) 89-97.

[15] H. Mauer (Ed.), Hyper-G now Hyperwave : The next generation Web solution, Addison-Wesley Longman, (1996).

[16] J. Nanard and M. Nanard, Hypertext Design environments and the Hypertext Design Process, Communications of the ACM, vol. 38, no. 8, (1995) 49-56.

[17] R. Nkambou and G. Gauthier, Integrating WWW resources in an Intelligent Tutoring System, Journal of Network and Computer Applications, vol. 19 (1996) 353-365.

[18] J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, and W. Lorensen, Object-oriented Modeling and Design, Prentice Hall Inc. (1991).

[19] G. Rossi, D. Schwabe, C. Lucena, D. Cowan, An Object Oriented Model for Designing the human- Computer Interface of Hypermedia Applications, Proceedings of the International Workshop on Hypermedia Design (IWHD’95), (1995) 123-143.

[20] M. Soga, A. Kashihara, J. Toyoda, Adaptive Fill-in-blank Program Problems from the View of Cognitive Load and Applications Systems on WWW, Proceedings of the International Conference on Computers in Education (1995) 575-582.

[21] Yuzura Tanaka, Meme Media and a World-Wide Meme Pool, Proceedings of ACM Multimedia 96, (1996) 175-186.

[22] J. Udell, Net Applications: Will Netscape Set the Standard ?, Byte, August (1997) 66-84.

[23] A. Verhoeven and K. Warendorf, Design Issues for a hypermedia Lab Support ITS, Proceedings of PACES 97, Singapore (1997) 567-574.

[24] A. Verhoeven and K. Warendorf, Hypermedia on the Map: Spatial Hypermedia in HyperMap, Proceedings of ICICS 97, Singapore, (1997), Vol 1, Pg. 589-595.