本記事は、アーカイブに保存されている過去の記事です。最新の情報は、公益社団法人日本印刷技術協会(JAGAT)サイトをご確認ください。

XML一問一答 第4回〔ツール編〕

Q : XMLにはどのような種類のツールがあるか?
A : 下記のようなさまざまなツールがあり,このほかにも分類しきれないものが多数ある。 DTD(XMLスキーマ)設計ツール/DTDパーサ・構文チェック
XMLエディタ・構文チェック/XMLタグ生成ツール
XMLパーサ(単独で動くバッチ型,JavaやC++などのライブラリ,IEなどへのアドイン) ドキュメント型XMLコンバータ(RTFやDTPファイルからのコンバート)/DB型XMLコンバータ(データベースやECXELなどのからのコンバート)
DTPソフトのXMLプラグイン(DTPがXMLを入出力できる)/OfficeソフトのXMLツールキット(WordやExcelなどからXMLを入出力できる)
XSLTプロセッサ(サーバサイドでXMLをHTMLに変換,Webブラウザ上のものなど)/XSL生成ツール XMLデータベース (ツリー構造をそのまま扱える)/XMLマッピングツール(XMLとRDBの間の変換や割り当てを行う)
RDBのXMLオプション(RDBがXMLのツリー構造を扱うための機能)/RDBのXML開発キット(JavaのAPIなど)
その他専用システム(BtoBシステムやECシステムや文書管理システムなどにXML技術を応用したもの)

Q : 最低限どのツールをそろえればいいか?
A : どんな立場でXMLを扱うかによって,必要なツールは異なる。
XMLインスタンス,つまりタグ付きテキストを作成する立場であれば,最低限必要なものとして考えられるのはXMLパーサである。これを使えば,XMLファイルが構文的にもスキーマ設計者の意図としても正しいものかどうかをチェックすることができる。XML専用エディタも有用だが,通常のエディタに自前でマクロを追加したもののほうが使いやすい場合もある。
スキーマを定義する立場であれば,DTD設計ツールは必須である。
ユーザがXMLを意識せずに入力編集などを行いたいのであれば,Office製品のXMLツールキットなどを利用するのが便利である。
XMLでデータを管理したいのであれば「XMLデータベースを購入すべきある」と言いたいところだが,既存のRDBで十分な場合や,フリーのXMLツールを組み合わせることで事足りる場合も多いため,専門のXMLコンサルタントに相談してみることを勧める。せっかくXML技術によってシステム依存の体質から抜け出そうとするわけだから,特定のシステムを売り付けようとしている人たちに相談するのはあまりお勧めできない。

Q : XMLの入力に関連して必要な標準パーサはあるのか?
A : XMLインスタンスの入力を請負う場合,そのファイルが正しいかどうかを検証するために使用したパーサを同時に納品するように指示されることがある。SGMLの時代は,事実上SPというフリーのパーサがデファクトスタンダードであったからあまり問題にはならなかったが,XMLには標準パーサと呼べるものがなく混乱を招いている。タグの部分さえ英数字であれば,日本語で動作するパーサは10種類以上あるが,どれも標準パーサとして完全なものではない。Webブラウザ,特にInternetExplorer上で表示することを目的にするのであれば,MSXMLを使用することで問題はないが,DTPソフトやPDF,そのほか印刷目的の場合は,今のところ相互の利便性を考慮して取り決めることになると思われる。

Q : XSLTプロセッサとは何か?
A :これは分かりやすく言うとコンバータの一種で,XMLのファイルを全く別の構造や形式のファイルに変換することができる。
IIS(Internet Information Server)などのWebサーバに機能追加する形のサーバ側のXSLTプロセッサは,現在のところXMLをHTMLに変換するために用いられている。XMLをサーバ側でHTMLに変換することによって,XMLをそのまま表示できないNetscapeなどのWebブラウザでも見ることができるようになる。
また,Internet ExplorerなどのWebブラウザに機能追加する形のクライアント側のXSLTプロセッサは,現在のところXMLを別の構造のXMLに変換するために用いられている。この機能を使うとWebブラウザ上でEXCELのような表計算をしたり,SORTをしたり検索をしたりできるようになる。いわゆるWebページそのもののデータベース化が実現する。
しかし本来XSLTは,XMLをXSL-FOに変換するという目的で規格された。

XSLTプロセッサの役割 XSLTプロセッサの役割

Q : XMLを印刷するツールには何があるのか?
A :現状では,QuarkXPress・InDesign・FrameMaker・Wordなどのフォーマッタに渡して印刷する方法が一般的であろう。しかしこの方法では組版のルールを各アプリケーションの機能に依存してしまうことになる。各アプリケーション間でのデータ交換が障害になることも問題になっている。
今XML関連規格の中で,特に印刷に関して注目すべきものはXSL-FOである。これは,簡単に言うとXML文書を(ページプリンタ程度の品質で)印刷するための組版ルールを定義するための規格である。このXSL-FOを使えば,XML文書をあるルールに基づいてPDFに変換することも可能である。
今後,印刷を目的とする多くのツール類がXSL-FOをサポートするようになること,そしてXSL-FOの日本語組版がさらに進化することが望まれている。そうすれば,XML文書を印刷物にするための組版ルールを共通化して自動化したり,各種フォーマッタ間のニュートラルフォーマットとして利用したりと,これまで夢だったワンソース・マルチユース環境が実現するかもしれない。

はじめに | 第2回〔基本編〕第3回〔システム編〕|第4回〔ツール編〕|第5回〔XSLT編〕

2002/11/21 00:00:00


公益社団法人日本印刷技術協会