Re: Evaluating Content MathML

Roman Sachse wrote:
>
> Hello List
>
> For my Bachelors Thesis I am trying to store mathematical expressions in
> an ontology via content MathML.
>
> To be able to work with these expressions I need a parser (preferably
> Java) which is able to generate content MathML and more important is
> able to read MathML expressions, instantiates the variables and returns
> the result.
It might not be an exact match to what you want, but some of the CellML 
tools might also interest you (or at least, parts of them). CellML is an 
XML-based language for expressing mathematical models, and uses content 
MathML to describe the equations. See http://www.cellml.org/ for more 
information, and http://www.cellml.org/tools/ for information on tools.

PCEnv (written in C++ and Javascript) has a content MathML editor (based 
on a text input language). "CellML Elite" (which is no longer 
maintained, and is obsoleted by PCEnv) was written in Java, and had a 
graphical content MathML editor. COR (which is closed source, and 
developed at the University of Oxford, and is written in Delphi) also 
allows content MathML in CellML models to be edited.

I'm not sure what sort of evaluation you expect, but both PCEnv and COR 
can integrate systems of ordinary differential equations (PCEnv binary 
distributions come with gcc, and PCEnv generates C code, and then 
compiles this code and links it in. COR generates x86 machine code for 
its simulations). You could probably take some code out of the C Code 
Generation Service if you simply want to evaluate real numbers from 
mathematical expressions of real-valued variables.
>
> Maybe I am completely blind but I was not able to find anything that
> satisfies my requirements.
>
> Actually these were my only findings:
> http://www.eteks.com/jeks/en/doc/com/eteks/parser/MathMLInterpreter.html
> (which does one part of the job, namely creating MathML output)
> and this question: 
> http://lists.w3.org/Archives/Public/www-math/2006Apr/0060.html
> posted about a year ago.
>
> Is there no parser that can work with content MathML input or am I
> completely on the wrong track?
The PCEnv input language parser grammar is at 
https://svn.physiomeproject.org/svn/physiome/pce/trunk/DataCollector/TextRepParse.y 
. This uses the MathML API through a custom binding generated from the 
W3C supplied IDLs,  so you could probably re-use it quite easily. Even 
if you don't use the code itself, it would be good to collaborate on the 
input language, and hopefully start to establish some sort of standard 
for user-friendly content-MathML input.

Best regards,
Andrew Miller

Received on Thursday, 22 February 2007 21:38:26 UTC