Search code examples
javascriptmathmathjaxmathmlinfix-notation

Convert Content MathML to infix/math notation string in javascript


How do I convert Content MathML (example below), in to an infix or math notation string. For example converting this:

      <math xmlns="http://www.w3.org/1998/Math/MathML">
        <apply>
          <times/>
          <ci> compartment </ci>
          <ci> k1 </ci>
          <ci> S1 </ci>
          <ci> S2 </ci>
        </apply>
      </math>

into: compartment*k1*S1*S2

I have looked at MathJax, but they do not appear to support Content MathML nor conversion to infix strings.


Solution

  • There are several XSLT files around the web which turn content MathML into presentation MathML. One “official” example is this file written by David Carlisle. Perhaps you can take that as the basis and adjust it to generate plain text instead of cMathML. You would need to call XSLT from JavaScript.