Date: April 6, 2009. Prepared by Jacek Polewczak and Carol Shubin.


 1.  Scientific input notations in Moodle and WebCT8/Blackboard9
   1.1.  LATEXinput
   1.2.  Creating graphs in Moodle
   1.3.  Exporting math expressions to other formats
   1.4.  Conclusions
 2.  Accessibility of mathematical content in Moodle and WebCT8/Blackboard9
   2.1.  WebCT8/Blackboard9
   2.2.  Moodle
   2.3.  Conclusions
 3.  Graphing functions in Moodle

1. Scientific input notations in Moodle and WebCT8/Blackboard9

Two large colleges of CSUN, Science & Mathematics and Engineering & Computer Science (comprised of ten departments), use extensively scientific notations in their course contents. Below, we provide a comparison of scientific notation inputs available in Moodle and WebCT8/Blackboard9.

Interested readers who want to learn more about doing Math on the Web are encouraged to read the recent article by Brian Hayes in American Scientist, Volume 97 (2009), pp. 98-102:

1.1. LATEX input.

LATEX is a document markup language (as groff/troff and html languages are) for representing structured documents. LATEX, initially designed and implemented by Leslie Lamport [1] in 1994, is based on Donald E. Knuth’s work (1984) The TEXbook [2].

TEX is a high quality typesetting program offering extensive desktop publishing features and automation, such as numbering and cross-referencing, tables and figures, detailed page layout, bibliographies, and indexing. Also, TEX/LATEX is the only VIABLE tool for creating high quality documents that contain math/physics/chemistry/biology/engineering notations.

1.1.1. LATEX input in Moodle. There are four ways to insert LATEX code in Moodle:

Internal and/or external graphical LATEX editors have a great pedagogical value; indeed, they allow students (and/or instructors) to learn LATEX markup language without drudgery of formulas memorization.

1.1.2. LATEX input in WebCT8/Blackboard9. WebEQTM (Java based) editor does not provide LATEX input. Furthermore, direct LATEX input is also not possible. These seriously impede creation of new math content in three ways:

Note: WebEQTM editor provides MathML input (though without MathML rendering); such input, however, is neither practical nor needed; see Section 2.3 for more details.

1.2. Creating graphs in Moodle.

The standard ASCIIMathML Moodle filter (unfortunately, not installed in CSUN’s MoodleRooms Pilot) also provides an easy method of creating complex and interactive graphs of functions. For sample demonstration, see the instructions in Section 3.

WebCT8/Blackboard9 does not offer this feature.

1.3. Exporting math expressions to other formats.

In addition to LATEX, DragMath (Moodle’s editor) can export to presentation MathML, Maple syntax, and Maxima syntax.

Maple and Maxima are two popular algebra systems for doing scientific computations. Maple is being used by Mathematics Department in a variety of courses: Algebra, Calculus, Numerical Analysis, Mathematical Modeling and in advanced graduate level courses.

Once the user is satisfied, the expression created in DragMath can be saved and re-loaded in DragMath own format for future use or further modifications.

WebCT8/Blackboard9 does not offer such exporting features.

1.4. Conclusions.

Moodle, in contrast to WebCT8/Blackboard9, offers several ways to input scientific notation: (a) direct LATEX input, (b) use of internal or/and external graphical editors, (c) copying and pasting from already existing resources, (d) easy creation of complex graphs. These inputs are available to instructors and students in all Moodle activities and resources: lessons, assignments, forums, wiki, surveys, chats, quizzes, messaging, etc.

WebEQTM, editor in WebCT8 provides neither LATEX nor graphing inputs. Furthermore, it is only available in two activities: course content creation and mail. WebEQTM editor in Blackboard9 provides neither LATEX nor graphing inputs, although it is available in most course activities.

2. Accessibility of mathematical content in Moodle and WebCT8/Blackboard9

One of the important features of any LMS is its capability to create various contents. It is also important whether such created content is accessible. The term accessible is understood here in the way W3C Accessibility Initiative understands it (see also, [3] for more information on ADA/508 compliance).

In this document, we consider accessibility of math content created in Moodle, WebCT8 and Blackboard9.

There are basically two accessible ways to represent math content in hypertext documents: (a) rendering math expressions as graphic images and/or (b) rendering them natively in browsers through various techniques that use MathML language.

MathML is an application of XML for describing mathematical notations and capturing both its structure and content. It aims at integrating mathematical notation into World Wide Web documents so it can be accessible to the visually impaired.

We created simple math content in WebCT-8, Blackboard9, and three Moodle sites: CSUN’s MoodleRooms Pilot, Carol Shubin’s Moodle site, and Jacek Polewczak’s Moodle site. Here are the login instructions:

username: hcmth008
password: jacek
Test Course - Polewczak: testing_mathml

username: jpolewczak
password: jpolewczak
Test Course - CSU-Northridge-jpolewczak: testing_mathml

CSUN MoodleRooms Pilot
username: jpolewczak
password: abc123
Polewczak Sandbox

Carol Shubin’s Moodle
Username: jacek
Password: abc123
Course Full Name 101 - Jacek testing

Jacek Polewczak’s Moodle
Username: test-user
Password: 1234

The sample file created in WebCT8 and Blackboard9 is called test_mathml_created, while the corresponding sample file created in Moodle is called test_mathml.

Below, for reference only, we provide pdf images of what one should see while viewing test_mathml_created document in WebCT8/Blackboard9:
and while viewing test_mathml document in Moodle sites:

2.1. WebCT8/Blackboard9.

test_mathml_created document provides the following math expression:


Expression (1) is rendered as an image produced by Java application. Neither Fire Vox screen reader nor Mathplayer can recognize expression (1) in test_mathml_created document. Thus, rendering of (1) in WebCT8/Blackboard9 is done neither by graphic image with alternate description nor by MathML rendering.

2.2. Moodle.

test_mathml document provides two variants of the same mathematical expression (1). The top expression is rendered as graphic image, while the bottom expression (in blue) is rendered in MathML.

2.2.1. Rendering as graphic images. All three Moodle sites provide graphic image of (1). Furthermore, when one right clicks on the first math expression and selects Properties, a new window will be displayed showing the content of alt/title text. Moodle by default provides alt=”” and title=”” descriptions, and allows for screen readers (as Fire Vox) to speak the alternate text. Here, it is in the form of the original LATEX code for the math expression at hand; and therefore we are not loosing any information! By the way, this shows forward thinking of Moodle’s creators. Thus, even if math expressions are rendered as graphics, such image are accessible, according to the current (April 2009) W3C/ADA guidelines. And here is only slightly more complicated math expression

    [       ]   ∫b[  (  )       ]
     - pϕdϕ b +    p  dϕ 2 - qϕ2 dx
λ =             ∫b                  ,

representing Reynolds’s quotient for the Sturm-Liouville problem:

[p(x)ϕ′]+  q(x)ϕ + λr(x)ϕ = 0,

that can be easily created in Moodle (see, more_complex_math in all three Moodle sites) and is very difficult to create in WebCT8/Blackboard9, with or without WebEQTM editor. We lost patience while trying to create it in WebCT8/Blackboard9.

2.2.2. MathML rendering. Now, MathML (actually, ASCIIMathML filter module) is installed and enabled in Carol Shubin’s and Jacek Polewczak’s Moodle sites and thus the bottom math expression in test_mathml is rendered in MathML. One can also check it by right clicking on the expression and selecting View MathML Source. Since ASCIIMathML filter module is not installed/enabled in CSUN’s MoodleRooms Pilot, MathML rendering of the second math expression in test_mathml is missing.

2.3. Conclusions.

Moodle provides two ways of making math content accessible: by rendering it as graphic images and/or (b) rendering them natively in browsers through the use MathML language.

WebCT8/Blackboard9, in spite of having the engine (WebEQTM editor) capable of doing MathML, does not render MathML. Instead, it renders math expressions as images produced by Java. This begs the question: WHY?

Although the authors do not have access to the internal documents of the company, the answer is pretty obvious. The company went for compatibility against accessibility ! Indeed, Java images can be viewed by ANY Java-enabled browser, while native MathML rendering requires recent versions of Firefox/Opera browsers and Internet Explorer (> 5.5) with MathPlayer plugin. Basically, MathPlayer plugin is needed because Microsoft Internet Explorer still does not accept the media type application/xhtml+xml. Furthermore, Safari browser also does not render MathML.

To sum up, Moodle’s developers have shown very forward thinking in making sure that all possible inputs and accessible outputs are available for rendering math expressions:

And regardless how the future turns out:

…Will Web sites of the future be chock full of MathML or will TeX and HTML continue to prevail? Or will something else altogether come along?1

Moodle is capable of handling it all !

The following table summarizes possible math inputs of a very simple math expression 5

in Moodle/Webct8/Blackboard9. We list only direct inputs as needed in editor’s windows since the use of graphical editors (WebEQTM in Webct8/Blackboard9 and DragMath in Moodle) does not require knowledge of any coding.

MathML input in WebCT8 and Blackboard9 of 5
(rendered as Java image)

  needs this coding:

<math display=’block’>  

LATEX input in Moodle of 5
(rendered as graphic image)

  needs this coding:


LATEX input in Moodle of 5
(rendered as MathML)

  needs this coding:


The table shows why MathML’s long and cumbersome input in WebEQTM editor of Webct8/Blackboard9 is not practical. Furthermore, nowadays, there are very few available sources of math expressions in MathML.

In the case of Moodle direct LATEX input has three advantages listed in Section 1.1.1.

NOTE: Recent versions of Firefox and Opera (on all computer platforms) properly render MathML. Internet Explorer (> 5.5) requires MathPlayer plugin from DesignScience:

Safari browser does not render MathML.

3. Graphing functions in Moodle

In addition to rendering MathML, ASCIIMathML filter module also provides handy graphing capabilities. They can be very useful to both instructors and students. Carol Shubin’s and Jacek Polewczak’s Moodle sites contain test_graphing_functions, a sample document of graphing capabilities of the module. As in the case of MathML, ASCIIMathML filter needs to be installed/enabled before these graphs can be created in CSUN’s MoodleRooms Pilot site.

The graphs created by ASCIIMathML module are interactive: indeed, placing mice’s cursor on the graph and moving it displays changing coordinates. Furthermore, the graphs can be changed on-the-fly; after double-clicking on graph, a small windows opens and allows entering/changing the original graphs.

Finally, graphing of functions is available to instructors and students in all Moodle activities: lessons, assignments, forums, wiki, surveys, chats, quizzes, messaging, etc.

NOTE: Recent versions of Firefox and Opera (on all computer platforms) properly render the above graphs. Internet Explorer (> 5.5) requires MathPlayer plugin from DesignScience:,
as well as the Scalable Vector Graphics (SVG) module from Adobe:

Safari browser does not render SVG graphics.


[1]   Leslie Lamport, A document Preparation System

[2]   D. E. Knuth, The TEXbook

[3]   Section 508 software accessibility standards, see also

[4]   Brian Hayes, Writing Math on the Web, American Scientist, Volume 97 (2009), pp. 98-102. Reprint available at:

Department of Mathematics, CSUN