« Office2007の新しい数式エディタ (4) 数学フォント | メイン | ココログ出版 (XSL Formatter 利用例) »

2006年09月21日

Office2007の新しい数式エディタ (5) Office2007数式のXML形式

Office2007数式エディタで作成した数式を保存すると、WordProcessingMLの中の数式は、独自のXML形式で保存されます。この数式XML形式は、Office Open XMLの仕様書に定義されていますが、ここでは仮にOMathと呼びます。

数式をマークアップするための標準言語としては、W3CのMathML2.0がありますが、OMathはMathMLとはまったく別の仕様となっています。
W3CのMathMLページ
MathML2.0

Office2007をインストールすると、Office12フォルダの中にomml2mml.xslというスタイルシートがインストールされますが、このスタイルシートでOMathからMathML2.0に変換することができます。

逆にMathML2.0からOMathに変換するには、mm2omml.xslスタイルシートを使用します。

早速、簡単な数式でどの程度の互換性があるか、試してみました。

1.Word2007 ベータ版で作成した数式(PDF):Office2007Math.pdf
2.Word2007の本文XML文書:document.xml
各数式はoMathPara要素の内容となっています。
3.次のようにしてdocment.xmlをomml2mml.xslでMathMLに変換します。  
 
>MSXSL document.xml omml2mml.xsl -o resMathML.xml

これで本文の中の数式だけ(oMathParaの内容のみ)を変換されます。このままでは表示できないので、少し修正してHTMLにしたものをブログにアップしました。数式の内容は変更していません。

4.resMathML.xmlをHTMLにしたもの:Download file この数式はInternet ExplorerとMathPlayer(プラグイン)を使うと表示できます。ご自分で表示できない人のためにIEの画面を下に示します。
20060921-1.PNG
これを見ますと、どうも、出来上がっているMathML数式に少しエラーがあるようです。(MathPlayerではMathMLにエラーがあると赤枠で囲って表示します。)

さらに、少し整形してXML化し、XSL FormatterMathMLオプションでPDFにしてみました。

■Formatterで作成したPDF:Download file
MathPlayerと同じ表示になっています。Office2007の数式を完全に再現はできていませんね。多分、OMathからMathMLに変換するスタイルシートが未完成なのでしょう。  

投稿者 koba : 2006年09月21日 08:00

トラックバック

このエントリーのトラックバックURL:
http://blog.antenna.co.jp/PDFTool/mt-tbng2.cgi/448

このリストは、次のエントリーを参照しています: Office2007の新しい数式エディタ (5) Office2007数式のXML形式:

» Bitacle Blog Search Archive - Office2007の新しい数式エディタ (5) Office2007数式のXML形式 from bitacle.org
[...] Office2007数式エディタで作成した数式を保存すると、WordProcessingMLの中の数式は、独自のXML形式で保存されます。この数式... [続きを読む]

トラックバック時刻: 2006年09月22日 14:49

コメント

コメントしてください




保存しますか?