[oXygen-user] Configuring OT's FOP To Render MathML

Radu Coravu radu_coravu at sync.ro
Thu Jan 9 02:01:32 CST 2014


Hi Eliot,

The DITA OT bundled with Oxygen contains our own custom MathML plugin:

> OXYGEN_INSTALL_DIR\frameworks\dita\DITA-OT\plugins\mathml

which adds our XSL override of the template:

>   <xsl:template match="*[contains(@class,' topic/foreign ') or contains(@class,' topic/unknown ')]" >
>     <xsl:apply-templates select="mml:math" xmlns:mml="http://www.w3.org/1998/Math/MathML" mode="copyMathML"/>
>     <xsl:apply-templates select="*[contains(@class,' topic/object ')][@type='DITA-foreign']"/>
>   </xsl:template>

Probably when you were running your plugin with the DITA OT bundled with 
Oxygen our own MathML processing plugin's XSL had a higher import 
priority and handled the namespace correctly so your XSLT template was 
probably not called at all.
When you tested in an external DITA OT, your plugin's XSLT template was 
used instead and it had that bug which did not handle the namespace 
correctly.

And indeed, the first step to debug the issue would have been to check 
the "topic.fo" contents.

Regards,
Radu

Radu Coravu
<oXygen/>  XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com

On 1/8/2014 7:03 PM, Eliot Kimber wrote:
> OK, final answer. It appears that all my problems were caused by the
> serialization of <math> without the namespace declaration.
>
> With that corrected, then simply putting the JEuclid jars in the fop/lib
> dir is sufficient to get the equation rendering, as it should be. I tested
> both a clean 1.8.M2 install and my previously-tested 1.6.3 install (I also
> inspected the FOP-related Ant scripts in the PDF2 transform and there’s no
> difference between them that would affect this).
>
> So the lesson is make sure your FO files are really correct before
> spending hours trying to track down a non-existent class path
> configuration problem . . . .
>
> Cheers,
>
> Eliot
>


-- 



More information about the oXygen-user mailing list