MathML Logo


#Presentations

#Schedule of Events

    

The W3C's MathML Validator

Neil Soiffer and Robert Miner
Wolfram Research, Inc. and Design Science, Inc.


Abstract

A standard is useful only if implementations conform to the standard. The W3C has asked the MathML committee to put together test suites and validators to help improve conformance to the MathML recommendation. In this talk, we will describe the tests and how both implementers and users can use these tests.

For implementers, the test suites provide a way to test software and make sure that the following occur.

  • If software generates MathML as output, then what is generated must be valid. To be valid, it must conform not only to the DTD but also to constraints not expressible in the DTD. Even if the output is valid, it may not conform to recommended usage, such as nesting subexpressions inside of <mrow>s in presentation MathML. Finally, a planned tool for MathML 2 verifies that depreciated MathML 1.01 features are not present in the output.

  • If software reads MathML, it must be capable of reading well-formed, valid MathML. Because each implementation may have different reasons for importing MathML (e.g., rendering, computation, speech), not all applications will do something useful with all of MathML. The tests are broken up so that implementers can easily describe what their system does with the parts of the recommendation that their system should handle. Although an implementation may not implement some part of the recommendation (e.g., a MathML speech system may ignore alignment or font size information), it must still accept as valid all valid MathML.
For users, the tests provide a means to judge the thoroughness and correctness of each implementation. We expect that reviewers will use the tests to compare implementations and publish the results of these comparisons for the benefit of users.