Encapsulation and Representation of Learning Objects in Learning Environments
Learning materials in elearning applications as well as conventional learning documents consist, to state it simple, of a set of learning objects. Every learning object itself is an independent learning unit containing content, exercises and tests. Therefore the semantics of such a learning object, that should be grasped by the learner, is a combination of the semantics of all the single components.
A human user can as quickly and correctly grasp this semantics as the content is realized well. Technical aspects however, like if pictures are statically embedded or generated dynamically, influence the understandibility only indirectly, i.e. they can only support the learning process. The best technical solutions can never compensate deficiencies within the content.
However for a learning plattform, that manages learning objects and offers them to the user, this technical aspect is crucial as this determines in how far the semantics can be grasped automatically by such a system. If for example a learning object only consist of textual components then the system will only be able to catch its semantics if they are technically realized as text. If they are realized as bitmap-graphics for example there will be no chance for this.
Of course you might wonder why it is so important that a learning platform knows, understand and should have access to the semantics of learning objects. The reason is that a learning plattform should offer functionalities that go beyond a single learning object. This includes of course the management and the ability to display such objects, but it moreover could include things like a generated glossary, a table of content, search engines and much more. In order to be able to realize all these functions the learning plattform needs access to the semantics of a learning object and must be able to interpret it correctly. Without such access a learning plattform cannot offer much useful information about the managed learning objects to the user.
The main tasks of this diploma theses are to show how learning objects can be encapsulated such that learning systems can access their semantics and how these encapsulated objects can be displayed, i.e. how they can get transformed into a graphical representation. This is to be discussed first of all on a general abstract level and then later on to be concretised for mathematical formulas.
Therefore possible existing languages that can encapsulate mathematical formulas should be evaluated and systems that can display, especially MathML, should be compared. On that base a highly configurable application that can display mathematical formulas in webbased environments as well as in printable documents should be developed. Especially this last aspect should be designed in such a way that the resulting documents, i.e. the formulas in the documents, are of a high quality. Moreover any restrictions to client environments should be avoided, such that in most cases in a server/client-system only the server needs a special installation or must match other criteria.
This diploma thesis has been written for the "inside Gesellschaft für Lern- und Informationssysteme mbH", such that most of the evaluating part is based on the practical use of the developed system embedded within the authoring tool used there. Moreover most of the general requirements stated above like the independency from plugins or specific browsers on the client, but also the needed compatibility with the XSL-FO processor XEP are a consequence of this.
The idea for this diploma arised from the practical experiences with the JEuclid tool, whose deficiencies made it necessary to develop an own system, which has now been done in this diploma thesis.
Diploma Thesis (documents in German only)
Developed Software Components
The developed components can be downloaded here as zip-files containing all sources and a binary, i.e. a jar-file, distribution within the 'dist' directory. Each component can be used on its own as all needed components are included within each zip-file. This especially means that the MathML2SVG component contains the DOM-Api-Impl and the MathML-Api-Impl components as well as the MathML-Api-Impl zip file contains the DOM-Api-Impl component. However if you make changes in a component, that other rely on, you possible want to update them in these components as well. This is done by first building a distribution jar-file via executing the default target of the build-file that is shipped with and then exchanging the corresponding jar-files in the 'lib' directory of the dependent components. As the whole system has been developed using Eclipse 3 the corresponding project files are included as well.
Apache XML Project:
- Crimson 1.1
- Xerces2 Java Parser 2.6.2
- Xalan-Java 2.6.0
- Xalan-Java Extensions
- Batik SVG Toolkit 1.5.1
Other Apache Projects:
- Apache XML Graphics Project - FOP (Formatting Objects Processor) 0.20.5
- Apache Ant Project - Ant 1.6.2
- Apache Cocoon Project - Cocoon 2.1
- Apache Jakarta Project - The Apache Jakarta Tomcat Servlet/JSP Container 5.0
World Wide Web Consortium:
- Extensible Stylesheet Language Transformations
- Document Object Model (DOM) Level 2 Core Specification
- Document Object Model (DOM) Level 3 Core Specification
- Mathematical Markup Language (MathML) 2.0 (Second Edition)
- MathML Test Suite 2.0
- Scalable Vector Graphics (SVG) Specification 1.1
- Scalable Vector Graphics (SVG) Working Draft 1.2
- Resource Description Framework (RDF)
- RDF Vocabulary Description Language: RDF Schema 1.0
- Design Science - MathPlayer
- Design Science - WebEQ
- SourceForge - JEuclid 2.0
- SchemaSoft - Custard 2.1
- AntennaHouse - XSL Formatter 3.2
- Adobe SVG Zone - SVG Viewer 3.0
- Corel SVG Viewer
- RenderX - XEP Engine - XSL FO and SVG Processor
- OpenMath Society - OpenMath 2.0
- Advanced Distributed Learning Initiative - Sharable Content Object Reference Model (SCORM) 1.2
- SELFHTML 8.0
- Chemical Markup Language (CML)
- O'Reilly - DocBook: The Definitive Guide
- Docbook Frequently Asked Questions
- Browser Statistics
- Sun Microsystems - Java 2 SDK Standard Edition Documentation
- Sun Microsystems - Tuning Garbage Collection with the 1.4.2 Java Virtual Machine
- The Numerical Algorithms Group (NAG) Ltd - MathML on the Web: Using XSLT to Enable Cross-Platform Support for XHTML and MathML in Current Browsers
- Short introduction to log4j
- akademie.de - Net-Lexikon
Created by. Last Modification: Sunday, 17. April 2011 15:19:42 by .