Call for Papers
General Information
Registration
Accommodations
Travel
Tutorials
Presentations
Schedule
| |
Essential Ingredients for Mathematical Content
Deployment on the Web: The MapleNet
Experience
Paul Mansfield
Waterloo Maple Inc.
Abstract
Summary
Although MathML is a relatively recent standard, it has already achieved
one major goal - it has established a real sense of optimism among
academics, vendors,
and others within the mathematics computation community that large-scale,
broad-based adoption of innovative, interoperable math technologies can
finally be
achieved. This presentation offers details on Waterloo Maple's product
directions in response to this emerging market dynamic - in particular, we
will describe how
MathML is used to connect the components of the MapleNet framework for
deploying "live" mathematical content to the Web.
Live mathematics on the Web requires more than just server-based versions
of computational math systems such as Maple or Mathematica. The MapleNet
framework addresses related needs of all participants in an institutional
deployment of Web-based mathematical content. Correspondingly, we assessed
the
requirements for installation, maintenance, development and publishing of
live content, assessment, etc. This presentation offers an overview of our
conclusions as
well as details on design and implementation of the MapleNet components to
address these requirements. MathML has played a critical role, enabling
these
components to exchange and store mathematical information.We will conclude
with comments on future directions.
Design considerations
An effective technology platform must offer flexibility, scalability, and
interoperability in a way that is defined well-enough that it is easy to
configure but general
enough that it can meet the needs of a diverse market. In order to achieve
this, we have developed a series of modular components that can be
composed and
customized to suit the needs of a given institution. It is clear that
interoperability standards are an essential ingredient. MathML is used as
the mathematical
interchange format between all participating components, making it easy to
develop components independently and integrating with third party systems.
As a
secondary benefit, this component approach also benefits the core Maple
user community. The Maple system has already benefited tremendously from
introduction
of MathML, XML, and network connectivity features.
Architecture Overview
The MapleNet framework is composed of four major components
- Content creation and publishing: MathML is used as the base format
for creating and storing mathematical content
- Server: The MapleNet server interfaces all components of the
framework. It uses MathML and SOAP to communicate with other components of
the
framework. The purpose of this server is to insert a layer between
user interface clients, content creation, computational engines, etc. This
approach provides
scalability, suthentication, ease of maintenance and administration
as well as an abstraction layer on top of the computational engine.
- User interface clients: The interface to the MapleNet framework from
a user's perspective is usually a web browser, likely augmented with Java
applets.
Mathematical content is displayed using MathML and WebEQ.
- Service modules: These modules plug into the server by means of a
corresponding driver and can provide functionality from performing a
mathematical
computation to connectivity to a database. The Maple computational
engine is one example of such a module. MathML is used to encode
mathematical
expressions at this level as well.
Software Demonstration
Prior to MapleNet our experience with MathML was mainly on creating tools
for authoring, publishing and computing with MathML, which are available
within
Maple. During the MapleNet project we were able to appreciate MathML from
a user perspective. We have used MathML to connect components of a large
framework and found it to be an enabling technology that allows the
MapleNet framework to use independently developed components both on the
client and server
side and also allows larger applications to easily integrate MapleNet, as
long as these applications also use MathML.
Our demonstration will touch on all aspects of the MapleNet framework and
will illustrate user interactions from the perspecitves of a content
author, an end user as
well as of a MapleNet site administrator.
|