DocBook の覚え書きを兼ねて DocBook を説明してみる。オープンソース系のドキュメントプロジェクトではよく利用されているし、普通にソフトウェアのドキュメントを書くために使えるツールだと思う。
Contents
DocBook とは
DocBook は SGML または XML を使用して構造化された文書を書くためのシステムを提供する。わかりやすくいえば、文書を構造化するマークアップ言語 - DTD である。コンピューター ハードウェアとソフトウェアの技術文書に適しているが、それらの分野に特化した制限は無く、他の種類の文書にも使用できる。
日本語で書かれた DocBook に関する体系的な文書がほとんど存在しないのが日本人にとっては難点である。しかし世界的にはドキュメントの作成に DocBook を使用しているプロジェクトが多数存在する。無償のドキュメント ツールとしてはデファクトスタンダードであると想像できる。
DocBook を用いて書かれた文書はプログラムで言えばソースコードに当たる。種々のツールを利用して DocBook から、HTML や PDF 文書など、他のフォーマットに変換することができる。DocBook もテキスト データとして保存され、そのテキストから HTML 文書や PDF 文書を出力するためのツールが存在する。プログラム開発でのソースコードとコンパイラとでも言うべき関係だ。
DocBook は SGML および XML で記述するが現在は XML が主流である。
O'REILLY から出版された Docbook: The Definitive Guide (洋書) がオンラインで無償で公開されている。ただしこの書籍は DocBook バージョン 3.x をサポートしたものであり、現在メジャーなバージョンである 4.x の文書は http://www.docbook.org/docs/ で入手可能。5.x のドキュメントも作業中ではあるが公開されている。
DocBook: The Definitive Guide http://www.oasis-open.org/docbook/documentation/reference/html/docbook.html - O'REILLY から出版されたバージョン。DocBook バージョン 3.x をサポート。
DocBook: The Definitive Guide http://docbook.org/tdg/en/html/ - DocBook バージョン 4.x をサポートしたドキュメント。
DocBook 5.0: The Definitive Guide http://www.docbook.org/tdg5/en/html/docbook.html DocBook バージョン 5.0 のドキュメント。
Documentation http://www.docbook.org/docs/ ドキュメント情報ページ
DocBook XSL Stylesheets
DocBook XML 文書は XSLT エンジン(xsltproc,Saxon)を利用して、異なる出力形式に変換する。そのためのスタイルシートが XSL Styleshets であり DocBook のための XSL をメインに開発しているのが The DocBook Project である。DocBook Project の成果物は MacPorts では docbook-xsl, Gentoo Linux では docbook-xsl-stylesheets というパッケージ名で配布されている。たいてい docbook の依存パッケージとして同時にインストールされるのかな?
DocBook XSL Stylesheets は次の出力形式のスタイルシートを用意している。これらのスタイルシートを指定して XSLT エンジン(XSLTプロセッサ)で処理してやれば任意のデータに変換できるわけだ。
スタンダードなスキーマ:
- XSL-FO
- HTML/XHTML
- HTML Help (Microsoft HTML Help)
JavaHelp
- Eclipse Help
- man pages (groff/nroff)
- Roundtrip (WordML など)
スライド用のスキーマ:
- HTML/XHTMl
- XSL-FO
- HTML Help
ウェブサイト用のスキーマ:
- HTML
(「〜のスキーマ」って書いてるけどよくわかっていない。ウェブサイト用のは MacPorts には含まれていない模様)
よく使われる book と article
DocBook は本、本のセット、章、記事、リファレンス マニュアルを作成することができる。なかでも最も使われるのが本を書くための book と記事を書くための article だ。book は 章と節から成り、article は節の複合物である。book では論文を書いたり、名の通り書物に仕上げる事ができる。aritcle は新聞記事やコラムなど形式にとらわれない文章の作成に使う。
メリット/デメリット
HTML と比較した DocBook の利点と欠点。
メリット
- 文書構造がしっかり定義できる
- 要素が多いため細かな論理マークアップが可能
- 様々な種類の文章に対応する要素がある
- XML文書なので他の文書フォーマットに変換しやすい
デメリット
- 出版物としてはただのテキスト文書であるためPDF書類などに変換しないと人間が読みにくい
- 人間に読みやすいように表示してくれるツールが少ない
- 要素が多い
サンプル コード
(LATER)
必須のツール
DocBook DTD
- xmllint
- xsltproc
- テキスト エディタ
その他のツール
- GNOME の yelp - viewer として使用できる。
XMLmind XML Editor - XML 文書エディター。DocBook XML もサポートされている。しかし Mac OS X 10.4 では日本語を入力できないことを確認している。
XSL
(LATER)
エレメント リファレンス
(LATER)
参考文献
DocBook.org - DocBook: The Definitive Guide のオフィシャルホームページ。
