Я пытаюсь понять, как преобразовать представление MathML математического уравнения и преобразовать его в представление LaTeX этого математического уравнения. Так, например...
<math>
<mrow>
<mfrac>
<mrow><mi>x</mi></mrow>
<mrow><mi>y</mi></mrow>
</mfrac>
</mrow>
</math>
... представляет собой простую сложную фракцию, и представление LaTeX будет...
\frac{x}{y}
Я уверен, что MathML не имеет презентационной разметки, потому что я строю строку MathML динамически, и я контролирую, как/где вставляются элементы MathML; строка MathML является просто чистой структурой математического уравнения.
Итак, мой вопрос: существуют ли там библиотеки Java/JavaScript, которые могут принимать входную строку MathML, как и выше, и генерировать соответствующую строку LaTeX? Я бы скорее не стал сам писать этот парсер. Если не Java/JavaScript, это какие-то библиотеки, которые могут это сделать?
Если нет, какие-либо предложения о том, как подойти к этой проблеме написания моего собственного парсера? С чего начать, что нужно учитывать, ресурсы и т.д.?
UPDATE
Благодаря Optimal Cynic, я смог использовать эту библиотеку Java делать то, что я хочу. Однако это не идеально, но я могу легко изменить его и сделать его работоспособным. Тем не менее, мне все равно хотелось бы, чтобы это было сделано в JavaScript. Так есть ли такие инструменты, как это написано на JavaScript? Если нет, я прибегну к его переводу.
Примечание. Я использую MathJax, чтобы отобразить MathML на странице, но MathJax в настоящее время не поддерживает способ перехода от MathML в LaTeX. Это может быть только переход от LaTeX к MathML.