Render MathML to Display, PDF, SVG
September 18 www.antennahouse.com
• Extensible Stylesheet Language (XSL)
Version 1.0
W3C Recommendation 15 October 2001 http://www.w3.org/TR/2001/REC-xsl-20011015/
Version 1 was developed by W3C from 1998 to 2001
• The objective of XSL is to specify a layout of XML documents on paged media.
– 56 formatting objects
– including 248 properties
2
• MathML is the XML-based language for mathematics
• In 1997, the W3C's Math Working Group finished the MathML 1.0 Specification
(superceded in 2001 by MathML 2.0 )
3
• XSL Formatter is a software program, developed by Antenna House, to format
XSL-FO.
– One of the first commercial XSL-FO implementations.
– Released in 2001
– Has been enhanced continuously.
• Input data:
XML/XSL-FO + Raster/Vector Graphics, SVG
• Output data:
PDF, Windows printer, Windows GUI,
SVG ( under development, the function is not available with V3.2
)
• Operating System
– Windows2000/2003,XP, Linux, Solaris
– AIX, Mac OS X (from V3.2 or later)
4
• Developed by Antenna House
• Renders MathML markup instance that is embedded within XSL-FO
• It will be released as an optional function for XSL Formatter V3.2 and/or later.
• Evaluation version is available from here: http://www.antennahouse.com
5
• High quality rendering of XML for STM
(Scientific, Technical, Medical) publishing using XSL-FO + MathML
• XSL-FO + MathML will replace TeX in the future
– TeX is popular, but it is not XML
6
• XML to XHTML
– XML + MathML XHTML + MathML
• XML to PDF
– XML + MathML XSL-FO + MathML
7
• How to specify MathML expression within
XSL formatting object
• MathML is treated as a vector Image
– XSL-FO V1.0 specification only permits to embed foreign object via fo:instream-foreign-object and fo:external-graphic .
8
DTD declaration is necessary to use entity reference in MathML.
In case DTD is necessary:
<fo:instream-foreign-object>
<![CDATA[<!DOCTYPE math PUBLIC "-//W3C//DTD MathML 2.0//EN"
"http://www.w3.org/Math/DTD/mathml2/mathml2.dtd">
<math xmlns= http://www.w3.org/1998/Math/MathML >
... MathML including entity reference...
</math>
]]>
</fo:instream-foreign-object>
In case without DTD:
<fo:instream-foreign-object>
<math xmlns= http://www.w3.org/1998/Math/MathML >
... MathML without entity reference...
</math>
</fo:instream-foreign-object>
9
• Specify URL of MathML file as the value of src property of fo:external-graphic object
<fo:external-graphic src="url('MathML/rec-rambda2l.mml')" contenttype="application/mathml+xml“ ... />
10
• Inline object:
• Block object: object is treated like a character enclose fo:instream-foreign-object within fo:block
Example
Inline
...
Block
11
• MathML Renderer inherits following information from its environment:
– font-size
– font-family
– font-weight
– font-style
– length of a 1px
• XSL-FO processor gets following information from MathML renderer:
– position of base-line
12
• Conformance to MathML 2.0 Specification
• W3C MathML Test Suite result
– V3.2 Beta version
Please refer to information on CD
13
• XSL-FO + MathML
14
XSL Formatter
GUI
15
Adobe Acrobat
16
IE6 +
Adobe
SVG Viewer
17
• Many tools are expected to be used throughout the world.
– MathML instances are generated by various tools, such as equation editors and/or converters.
• Compatibility between generator and renderer of MathML is very important
– Correct MathML generation by various tools is a presupposition of automatic MathML rendering.
18
Antenna House, Inc.
(Corporate Headquarters)
Kojimachi Shuei Bldg., 4-3-13, Kudan-Minami, Chiyoda-ku
Tokyo 102-0074 Japan
International : info@antennahouse.com
Phone : +81-3-3234-9631
Fax : +81-3-3221-9975
Tokushige Kobayashi < koba@antenna.co.jp
>
Antenna House
(North American and European Sales)
7272 Wisconsin Ave. Suite 300 Bethesda,
Maryland 20814 USA
Phone: +1 301-941-1925
Fax: +1 202-318-0323
19
Index Information Technologies Oy
P.O.Box 112, Sinikalliontie 6
FIN-02631 Espoo
Finland
Tel. +358 9 5259 500 www.index.fi
Contact: Martti Poutanen
< martti.poutanen@index.fi
>
20