activityML: The AOLA Language

The activityML specification language allows a teacher to express an activity (lesson, lecture, etc.) in such a way that the learning process with the activity can be conducted online:
  • shareable in any system environment - obviously, current technology points to XML specification
  • editable by choice of your authoring tool - this can be done simply by adding an pluggable component to existing authoring tool that generates activityML compliant output format.
  • actionable in online environment by the learners - this will require a bit more experiments as 'actionable' can be accomplished in a number of ways (e.g., portlets, applets, AJAX-based web pages, flash, server-based scripts or programs, etc.)
  • embeddable with dynamic computable mathematical equations by leveraging powerful existing mathematical software - this embedding process partly depends on the actionable environment; basically, we need a client side language, a transport, and server-side support (by existing mathematical packages or other tools), and,
  • extensible to other subject matters - the difference rests mainlyl on the embeddable components and minor user interface.

Two technologies are currently in development: 1) activityML suite (schema, editor and viewer), and 2) AOLA platform environment: activityML aware. We provide the progress status of those two developments here.

The activityML Suite [updated: June 17, 2007]

Four components are important in this suite: 1) the language activieML, 2) the editor (or when in full production stage, the authoring tool), 3) the viewer, and lastly 4) the e-Activity workpad. We will track the development of each next.


activityML Language

Some of the features of activityML:

  • You can specify activity element 'Exercise', 'Assignment' (not shown), and 'Assessment'; actually, any new activity element can be added easily when needed. There can be 0 to n number of each of these activity elements.
  • Each activity element can have different attributes. Some of these attributes are:
    • Tracking: should the activity element be tracked to gauge the performance indicator of both the learner and the design of the activity for later evaluation.
    • Due Date/Time: to remind the learner certain deadline is enforced and possibly imminent.
    • Dynamic Mathematical Equations (DME): mathematical elements that can be explored, viewed, etc. by the learners. The syntax of writing that equation can be specified (e.g., a LaTeX-like equation or a MathML equation), and the dynamicity enabler can also be specified as Maple, Autograph, Graphics Calculators, or Open Source Software, etc. In the example, the DMEs are listed separately (referenced by $1$ and $2$ in the 'description) with placeholder appropriately placed in the text description. Such DME will be correctly shown in place when the activity is accessed via the AOLA platform environment.


the editor

The development of the editor is ongoing and 80% complete. We are using simple JSP pages to do the task now. Here is a few screen shots:

and the partial view of the activity in XML form:

The choice of XForms and/or AJAX-based facilitation remains to be investigated.

the viewer

Based on some exercise published for learning in the K-12 group using graphics calculators, we create an Activity using activityML (as a XML document). The simple example, 'Arm Length & Shoe Size', can be viewed by clicking here. The Activity will be opened in another browser window [IE6 is ok; somehow, IE7 does not show; let me know if other browsers work so I can post it here].

The example is written in activityML [see the XML file - if your browser supports XML native viewing], it is now presented in the new browser using XSL (Extensible Stylesheet Language). The output at this point is in HTML. This means that the mathematical symbols/equations, or Math Objects (MO) cannot be rendered dynamically. The next effort is to generate the output in JSP (JavaServer Page), in it, JSP tags are used to specify the MOs such that the image is generated in the server-side. For example, the following code is all you need to include that MO in the page:

	<a2a:showMathObject nature="static" inputMethod="Maple" anchor="2" logon="guest">
   	\sum{{x^2-2^{yy}}{\ll}{\alpha}Y^{\gamma}}}b}
	</a2a:showMathObject>


Of course, there is no one de facto input standard for MOs.  Wonder which one input method is the most 
commonly used by teachers and learners?  I need a poll here...Anyone?

the e-Activity workpad

The basic workpad environment has been done. The next task is to develop Web Services hooks to enhance the capability and extensibility of the AOLA platform by leveraging other existing computational engine (not yet in the view of the Grid).

The AOLA platform environment [updated: June 12, 2007]

One key characteristics of a platform environment that has already been done in now popular platforms is the sharing capability that we would not discuss here. YouTube.com provides a platform for anyone to share any video files to anyone on that platform. It is a simple any-to-any implementation and it is becoming more common in the Web community. We do not freely enrolled any webizen, but only those that are 'connected' (such as facebook.com). In our case, the technology-focused member network in the Mathematics Education community. For now, we will present how such an activityML file can be actionable in the AOLA platform.

We will discuss more once the activityML Suite is appropriately described. See A2ABlog for a brief view of the GUI. OpenJMS along with activeMQ are currrently used to enable messaging in the system. Firewall settings created some problems. We will put out the version without the messaging capability soon (this means teachers and learners cannot do any2any communication on-demand).