Copyright ACM, 2000

Adaptive Intelligent Hypermedia using XML

Maria Elena Bonfigli

Dip. Scienze dell'Informazione
Università degli Studi di Bologna
Via Mura A. Zamboni 7
40134 Bologna, Italy
Tel. +39.051.2094880

Giorgio Casadei

Dip. Scienze dell'Informazione
Università degli Studi di Bologna
Via Mura A. Zamboni 7
40134 Bologna, Italy
Tel. +39.051.2094507

Paola Salomoni

Dip. Scienze dell'Informazione
Università degli Studi di Bologna
Via Mura A. Zamboni 7
40134 Bologna, Italy
Tel. +39.051.2094880


In this paper we discuss the problems of developing Web-based Adaptive Hypermedia (AH) for engineering education using Extensible Markup Language (XML). AH systems are capable of altering the presentation of the content of the hypermedia on the basis of a dynamic understanding of the individual user [5]. The user profile can be collected in a user model, while the knowledge about the domain (the content of the hypermedia) can be represented in the form of a concept-based domain model. So we have defined two different markup languages using XML: the former for structuring the domain model and the latter for describing the student model. These languages can be easily extended and authored, with the result of obtaining a simple methodology for data structuring in the field of Web-based educational AH.


adaptive hypermedia, educational hypermedia, intelligent tutoring system, user modeling.


With the rapid advances in WWW interactive technologies, the use of Internet-based distance learning tools is rapidly growing. Most of these products are nothing more than a network of static hypermedia pages. In fact the domain knowledge implicit in traditional Web-based educational hypermedia is well defined and carefully structured and provides an only learning path optimal for a generic average student [5]. Otherwise, a Web application, which is designed with a particular class of users in mind may not suit other users. Moreover, "static" hypermedia assume that the users can make sensible decisions about when to use navigation tools, about when to proceed in the learning process, about when they need an explanation, etc. [3]. This could be a problem for those users who access the hypermedia through the Internet and that can’t have a teacher at their disposal.
Adaptivity is the feature of hypertext and hypermedia that allows one to adapt the contents to the user needs [1]. AHs systems modify the presentation of the domain knowledge according to the user profile. This mechanism permits to personalize the Hypermedia in terms of contents and of navigation tools for each user.
The focus of this paper is on the general architecture and the implementation issues of a Web-based educational AH. This system has been implemented by using the functionalities provided by XML in order to stress the separation of the information content from presentation. The basic idea is to define a general hypertext structure in order to create pages dynamically using a structured description of the domain knowledge and a model of the current user.


The AH system architecture (see Figure 1) consists of [9] three main components: a student model that represents the student knowledge; a domain model that contains the domain knowledge information structured in topics and relationships; a dynamic management module that is responsible for creating pages dynamically by using the information contained both in the domain and in the user modules.

Figure 1: System architecture

XML is a meta-language that allows us to create specialized markup languages for specific purposes [8]. XML is a subset of the more general Standard Generalized Markup Language (SGML) and represent a "de facto" standard for developing specialized markup languages. For example, it is possible to create a tag <TOPIC> (and the closure tag </TOPIC>) that identifies a particular knowledge element.

For implementing our AH system we have implemented two languages:

In particular we have implemented two different Document Type Definitions (DTDs) that define the fixed structure of the two above mentioned markup languages. In the following two subsections we will give some examples of the new tags that we have introduced. Finally in the last subsection we describe the Dynamic Management Module.

2.1 Domain Knowledge Structure

To be dynamically processed, the domain knowledge has been structured into topics and each topic is associated to a page. Each topic is characterized by: Therefore a link from a page to another one represents a relationship between the two topics. We have considered six different types of relationships between topics [9]: The first relationship (son/father) defines the hierarchical structure of the knowledge domain. Knowledge is represented as a tree in which each node identifies a topic and a root topic is defined. The next relationship represents the sequence of topics suggested by the teacher. All the other relationships create irregular connections between topics that transform the original tree-scheme in a graph. The student can navigate the graph following all the different types of relationships and defining a personal learning path [9].
Each relationship is associated to a cluster of conditions that defines which kind of requirements the student needs to follow the link. If the student model satisfies all the conditions the link is displayed. The link associated to the son/father relation always appears without requirements. All the other links can be conditioned, and in particular the teacher links can have different arriving pages in function of the student model status.
In this way each node is associated to a set of next links, each one valid under a different set of conditions. The condition scheme is organized as follows.
Each condition is divided in different condition terms composed with and and or operators. We have considered that students are classified in three stereotypes and we have associated to each argument that needs to be known a stereotype and a certain minimum knowledge level. So that a condition term can be read as: "if the student of a level X have got a knowledge level Y on the argument A, then the condition term is true". By composing condition terms with and/or operators we can obtain complex didactical requirements.

Figure 2: A simple example of domain knowledge structure

The DTD that describes DSML contains the definition the following tags:

The following code fragment represents a simple example of the DSML tags.
    <TOPIC> Topic Title
HTML Explanation description
Three different type of tags are used: Other tags are defined in order to describe relationships between the topics and in particular:

2.2 Student Model

The student model is a structure maintained by the system with the aim of being able to respond to the individual student's learning style and deliver customized instruction. There are different ways to approach the student model problem.
The most commonly used student modeling technique in AH systems is the overlay model [5]. In this model, the student knowledge is considered an overlay of the domain knowledge and is frequently represented as a set of concept/value pairs. For each domain model concept the student model stores some values that estimate the student knowledge level of this concept. This model assumes that the student knowledge is a subset of the knowledge domain described by the teacher and cannot capture different knowledge conception. In spite of this, the overlay model is commonly used in the adaptive hypertext field because the content of the adaptive hypertext itself can be considered as a description of the entire domain knowledge. This involves that the student can be represented simply overlaying the hypertext structure.
Other adaptive hypermedia systems use simple stereotype model [5]. Student knowledge is represented as a set of concept/value pairs (as in overlay model), but the values are not completely independent. The student can be assigned to one or more class (called stereotypes) and each class is identified by a fixed set of concept/value pairs.
On the other hand the most part of the Intelligent Tutoring System [2] are developed using a representation of the student's knowledge based on student bugs and misconception. The buggy model represent the student's knowledge in terms of deviations from an expert's knowledge. The system classifies each student error and then uses this information to predict the student’s behavior in future situations. The buggy model is really useful in learning-by-doing systems in which the system needs to monitor a student activity (as for example, exercises solving procedure).
To implement the student model we have used a mix of the overlay model and of the stereotype model.
The overlay model has been implemented associating to each topic a value that weights the level of the student knowledge of that topic. This evaluation is given measuring the time spent reading the topic and the number of visits. Each time the student requests a page, the associated value is updated.
We have also classified possible students into three different stereotypes: expert user, medium-level user and beginner user. This evaluation refers to all the arguments of the domain model and is a general assessment of the student ability. We have used a scheme based on three stereotypes referring to different system described in well-known literature [7, 5]. Anyway our system can recognize each set of integer values as a stereotype scheme.
The student model is realized using two DTDs: the former defines a structure that contains the user's logins and the related passwords, the latter defines the structure for the SMML in order to describe the personal student model file. The DTD that describes SMML contains the definition of the following tags: A simple example of student model is the following:
    <LAST topic="1">
    <LEVEL degree="0">
    <VISIT topic="1">
The example shows the student model of a beginner level user (LEVEL DEGREE=0). In the <MODEL> structure there is only one VISIT tag meaning that the student has just run the hypermedia and has visited only the first page identified by the topic="1".The LAST visited topic is obviously the number "1". The example shows the student model of a beginner level user (LEVEL degree="0"). The nested tags <LEVELT> and <NUMVISIT> identify respectively the level of knowledge of the topic and that the student visits this topic page for the first time.
It is worth to note that the student models are automatically created and managed by the system so that the SMML is used only by the system to store relevant information.

2.3 Dynamic Management Module

The Dynamic Management Module (DMM) creates the pages of adaptive hypermedia on the basis of the Knowledge Domain Model and the Student Model.
The general architecture of DMM consists of four main components: the User Action Management Module(UAMM), the Adaptivity Management Module (AMM), the Domain Model Management Module(DMMM) and the User Model Management Module (UMMM) [9].
In particular:


We have described the developing of two new markup languages that allow us to describe complex knowledge structures. It's worth to note that the system is designed in order to realize adaptive educational hypermedia, but it can be used for every kind of adaptive hypermedia thanks to the flexibility of the used structures.
Our AH system has been implemented using a client-server scheme based on HTTP. The server application that automatically produces personalized XML pages has been described in the previous sections. The client is a common used browser, Microsoftã Internet Explorerã that can evaluate and display XML pages. Before starting the navigation in the AH system, the user has to identify himself with a username and a password. The server uses this information to store the appropriate student model (or to create a new student model for a new user). Then, each time the student asks for a new page, the browser asks for it to the server side application that compute the content of the page dynamically on the basis of the student model. A Java applet, which communicates to the server application all the events generated by the browser, updates the student model status.
We are currently testing an AH system on programming, created with XML dynamic support, that is developed for a University undergraduate program course. This test has underlined different aspects of the system that need to be improved

Figure 3: A snapshot of the Web-based educational AH on programming

In particular we are working in order to improve the student model and the user interface.
We are working on the student model to insert:

Evaluation tests can be closed answer tests, exercises that need to be solved, every different type of evaluation procedure that can give back an integer evaluation. The solving procedure associated to the exercises of the evaluation test can be monitored using every type of user model. In particular we are working on a Web-based educational AH system on Computer Architecture in which a set of exercises are based on the buggy model.
Moreover we are working on new user interface features to improve the navigation tools in the AH system [4]. In particular we are implementing an orientation map, that gives to the student a global idea of the domain knowledge organizing topics as already known and not yet.
Further works will consider the implementation of an authoring tool that will allow teachers to structure the domain knowledge without introducing DSML tags directly. This tool should be a WYSYWIG editor for developing AH courseware.


  1. Adaptive Hypertext & Hypermedia Home Page,
  2. Anderson J.R., Corbett A.T., Koedinger K., & Pelletier R., (1995). Cognitive tutors: Lessons learned. The Journal of Learning Sciences, 4,167-207.
  3. Brusilovsky P., 1998,"Adaptive Educational Systems on the World-Wide-Web: A Review of Available Technologies". In: Proceedings of Workshop "WWW-Based Tutoring" at 4th International Conference on Intelligent Tutoring Systems (ITS'98), San Antonio, TX, August 1998.
  4. de La Passardiere B., Dufresne A., 1992, "Adaptive navigational tools for educational Hypermedia", I. Tomek (Ed), Computer Assisted Learning (pp. 555-567), Spinger-Verlag.
  5. Eklund J, Brusilovsky P., Schwarz E., 1997, "Adaptive Textbooks on the WWW, in: Proceedings of AUSWEB97 - The Third Australian Conference on the World Wide Web, 186–192, Queensland, Australia.
  6. Stern M., Woolf B.P., Kurose J.F., 1997,"Intelligence on the Web?", Artificial Intelligence in Education, IOS Press, 490-497.
  7. Wenger E., 1987, Artificial Intelligence and Tutoring Systems, Morgan Kaufmann Publishers, Los Altos, CA.
  8. W3 Recommendation, "Extensible Markup Language (XML)",, 1999.
  9. E. Bonfigli M.E., Casadei G., Salomoni P., ``Adaptive Intelligent Hypermedia in Engineering Education'', Proc. of 2000 ICSEE/Western MultiConference on Computer Simulation (ICSEE/WMC'2000), accepted for publication, San Diego (USA), January 2000.

Maria Elena Bonfigli is Ph.D. student in "History and Computing" at University of Bologna, Italy. Her research interests include: Distributed Multimedia Systems, teaching/learning Environments, 3D Web Interface Design and Virtual Reality applied to Cultural Heritage.

Giorgio Casadei is full Professor of Information processing Systems and is currently the Department Chairman of the Computer Science Department, University of Bologna – Italy. He is also Member of the Scientific Council of Interdepartmental Center for Educational Research – Bologna University. Research area is the integration of information technology in education.

Paola Salomoni is currently an Assistant Professor of Computer Science at the Department of Computer Science of the University of Bologna. Her research interests include: Distributed Multimedia Systems, teaching/learning Environments and Integration of services in Computer Networks and Systems.

Copyright 2000 ACM

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and or fee.
SAC 2000 March 19-21 Como, Italy
(c) 2000 ACM 1-58113-239-5/00/003>...>$5.00