先日DocBookのDTDを見せていただく機会がありました.DTDというのは簡単な構造だったらそのまま見てもなんとかなりますが、DocBookクラスになると、直にDTDを見ているととても理解するのに大変です.ましてやたいていの場合DocBookのDTDをそのままで使うことはなく、自分の目的に沿うようにカスタマイズしています.そうするとあっちを見たり、こっちをみたりしなければならずと、とてもついてゆけません.
以前あるお客様のDTDをカスタマイズする仕事をやっていたとき、そのカスタマイズしたDTDを納品すると専用のツール(?)で構造がわかるHTMLに落としてくれて送っていただきました.DTDをJavaDocのように見られて大変便利.スタイルシートの開発には手放せない存在でした.
でも手元のoXygenにはDTDからHTMLドキュメントを生成してくれるようなツールはついていません.どこかにそのような便利なツールはないものか探したのですが、sourceforgeにありました.
DTDDoc - DTD Documentation Tool
本家そのままのDocBook DTDでしたら、以下のようにバッチリHTML化してくれます.
これで行けるかと思ったのですが、いざターゲットのDTDを試してみるとあえなくこけてしまいました.
どうも昔の4.xのバージョンのDTDは通ってくれないようです.しかたがないので類似のツールを当たってみたのですが、どれも古すぎたりしてまともに動いてくれません.
そこでもしかしたらDTDをXML Schemaにしてくれるツールがあればと考えて当たってみたのが以下の著名なJames Clarkさんのツールです.
Trang - Thai Open Source Software Center Ltd
これを次のようなコマンドラインで動かすと一発でXML Schemaを生成してくれます.
あとはこれをoXygen XML Developerで開いて、Tools-Generate Documentation-XML Schema Documentationを選べば、oXygenのXML Schema表示とほぼコンパチのHTMLを生成してくれます.
(ちなみに画像は本家本元のDocBookのDTDをXSDに変換してoXygenでHTMLに落としたものです.)
大変助かりました.やはり持つべきは優秀なツールですね.