Office Open XMLがISO標準に

投稿日:2008年04月02日 作成者:yasunaka

今日、MicrosoftのOffice 2007で利用されているフォーマットであるOffice Open XMLがISO標準として認められたというニュースが流れていました。

先日リリースしたcrossnoteのWord 2007形式での出力機能でもこのファイルフォーマットを利用しているので、会社としてありがたいニュースです。ただ実際に携わってみた感想を言えば、ちょっと 「?」な部分もあります。

実際にこのフォーマットでの出力をやってみてわかったのは、これはやっぱりMSフォーマット!ということでした。

まずXML Schemaの定義に基づいてモデルオブジェクトを生成しようとしたのですが、JavaのBinding compilerではどれを試してもOffice Open XMLのSchemaを処理できるものがありませんでした。XML Schemaが悪いのか、Binding compilerが悪いのか、うちの使い方が悪かったのかはわかりません。まずここで最初の、「?」。今回は出力だけなので、DOMにいったんぶち込んで、それを吐き出すようにしています。

次の悩みどころは、実際にWordで表示してみるまでわからない、という部分。Schema定義的にはオッケーなはずなのに、Wordで表示してみるとなかなか思ったように表示されず、というのにだいぶ苦労させられました。特に図形部分はまだ情報が少なく、トライ&エラーの連続です。基本的にMS Officeがないとちゃんと動くOffice Open XMLのファイルは定義すらできません。ということで、やっぱり「?」。

最後の「?」は、最新の定義なのに「Deprecated」の嵐であること。後方互換性のためなのでしょうが、最新のXMLの規格になんで後方互換性が必要なのか? よくわかりません。さらにそのDeprecatedとなっている機能を使わないと実現できない部分もあるように思います。ちなみにVML(Vector Markup Language)はDeprecated的な扱いのようですが、結局使いまくりです。

ま、MS Officeが「リファレンス・インプリメンテーション」ということなのでしょうね…