next up previous contents
Next: The Scope of Symbols Up: OpenMath/MathML Translation Previous: Constructing Objects   Contents


Elements and Functions

MathML has a classification3.2which categorises elements according to the number of arguments they accept and the types of these arguments. This classification can be summarised for our purpose into the following:

unary elements
accepting 1 argument

binary elements
accepting 2 arguments

nary elements
accepting 3 or more arguments

operators:
elements whose arguments are given following a specific syntax. This includes symbols such as int, sum, diff, limit, forall and a few others.

This classification is not explicitly stated in the OpenMath standard but can also be used since OpenMath symbols fit well into these categories. By gathering OpenMath and MathML symbols into these defined groups according to their syntax, it is possible to define specific translating procedures which deal with all symbols in one group in the same way.

For instance one procedure could parse through any unary function by reading in the symbol and then the one argument. Printing out unary functions would be done by one procedure which would output the symbol in MathML or OpenMath followed by that one argument.

The advantages of this classification are that it greatly simplifies the translation. Parsing and generation of all symbols would then be the task of a few generic procedures. However, symbols contained in the operators group require more attention, since they have different ways of reading in arguments. Specific procedures need to be implemented for such cases. We will discuss these in more detail later.



Subsections
next up previous contents
Next: The Scope of Symbols Up: OpenMath/MathML Translation Previous: Constructing Objects   Contents
root
2000-05-01