In IDEAL, it is essential to have an effective electronic means for managing, delivering, processing, and presenting educational materials. Achieving these goals requires an approach that is not only extensible into the future but also adaptable to incorporate new technologies and requirements. To ensure broad adoption, the technology selected needs to be widely and freely available as an open standard. By selecting a paradigm that by its very nature is dynamically defined, extensible, and simple, these goals can be intrinsically met.
We develop an innovative approach based on active XML (eXtensible Markup Language) documents for organizing and delivering course materials. Courses materials are decomposed into small components, corresponding to lecturelets, around the subjects to be learned. Lecturelets are ``smart'' XML documents, namely XML documents that carry not only contents but also Java code. Lecturelets can be dynamically assembled to cover course topics according to individual student's progress. By using standards for accessing XML documents with style information, lecturelets can be cataloged, searched, exchanged, and viewed. In contrast to most of the existing learning materials that are static, our approach provides an exciting dynamic process that can be infinitely extended. It has the potential to change the way universities manage and transfer their educational materials.
Our approach is enabled by the four complementary and powerful technologies: XML, template, agent, and repository. Each component adds unique tools that leverage the other pieces.
(a) XML provides the foundation. XML brings with it all the rich capabilities and transport layers of the Web and the Internet in general. The logical structure of an XML document can be specified in a Document Type Definition or DTD. Representing the course materials as structured XML documents makes searching, archiving, reading, and navigating the documents simpler.
(b) Templates are the rules providing the glue that holds the whole dynamic interactive learning process together. Templates are referenced or travel along inside the XML as a special section, and can be easily read and interpreted. They are supplemented by DTDs. DTDs enable task interoperability, while templates enable processing, including presentation, of tasks. DTDs let two participants understand each other's XML documents, while templates define what happens to the documents. The leading browsers supporting XML allow for the lecturelets to be viewed exactly the way the user wants it.
(c) Agents interpret the templates to perform the task needed and may interact with the user to create a new template for each new specific task, or look up and attach the right template for an existing job. They also can reference DTD's to determine display characteristics for documents. This is where Java and ActiveX fit in. Lecturelet agents on the Web browser can obtain updated information and instructions from the server agent and can also provide feedback to the server agent for statistical analysis and data mining. The benefit of using intelligent agents is to make the system much easier to use, more intelligent, and more fault tolerant. In many cases agents will resolve problems without the user being aware there was a problem.
(d) The repositories provide the storage for lecturelets, student models, and other components involved in the learning process. New lecturelets can be dynamically added to the repositories with little interruption to the ongoing learning activities. The repositories also allow for indexing, automatic lookup, and sharing of lecturelets among different learning systems.
Lecturelets contain both the XML documents and the instructions (templates/agents) on how the documents should be processed or displayed. The internal elements of lecturelets and the framework for intelligent delivery of lecturelets on the Internet are shown in Figure 2 . The lecturelet framework makes the transfer of educational materials between different software systems transparent to the user and as easy as possible. It allows software agents to reach out to the Internet to read from and ``make sense'' of online course listings. In XML, each document is an object and each element of the document is an object, too. Being XML documents containing both data and code, lecturelets can be manipulated as objects.
Once defined, templates can be applied to the objects in XML documents. Based on user defined templates, lecturelets will be re-organized during the learning process and displayed accordingly, and may even trigger events on their own. For example, they will be able to find an application by using the searching, classifying, and routing mechanisms. They will have learning status self-contained for users to set and interrogate. Lecturelets can either run independently, or interact with each other through standard XML messages.
IDEAL is able to use the many search tools that are being adapted for XML. The lecturelet framework will allow for the search of educational materials in various ways. In addition to the keyword-based search, the objects in XML documents allow for more intelligent searches such as content-based search. There are already SGML query languages that are similar to SQL in power. With standardized DTDs for different applications one could retrieve information accurately. The relationships in the document structures can be used as well as the objects themselves in the query. The DTD allows for precise relational searches of the XML documents either in the local repositories or on the Web.
IDEAL provides an interactive learning environment that combines the visual presentation of course information, class notes, and executable components of learning materials. In learning a subject, the lecturelet agent is essentially a teaching agent. The lecturelet agent obtains the student model from the lecturelet server and updates the model by observing the student's learning process. It teaches the materials in the most appropriate form and pace based on the background and learning capability of the student.
The lecturelet agent contains a student model, a simple subject-unit sequencing module and an assessment component. The student model represents the student's learning style and knowledge levels. The subject-unit sequencing module is responsible for selecting the most appropriate basic subject units to be presented to the student based on the performance of the student on previous subject units, the student models, and the dependency relationships between the subject units. A lecturelet on a subject usually contains a collection of basic subject units. The assessment component records the usage of the lecturelet, the performance of students on the exercises and quizzes, and the comments from the students. The assessment data will be uploaded to the server when the current session is finished. The student model and profile will then be revised on the lecturelet server by the server agent accordingly. The lecturelet agent may also adopt various cognitive skills such as natural language understanding, conversation, natural language generation, learning, and social aspects. These make it easier for students to interact with the agent through natural forms of conversation and expression.
A course is composed of a collection of lecturelets. The server agent on the lecturelet server manages lecturelets and their relationships. It configures the lecturelets into a coherent course sequence based on the course objective and the target audience. It uses the pedagogical modeling technique to deliver the appropriate subsequent lecturelets to individual students based on their performance and interests. It collects student performance data from lecturelet agents and performs data analysis and data mining to extract useful information for improving teaching in the future. The agent on the lecturelet server also manages the student profiles and is responsible for updating student models.