blob: 3d3a4e5cd01db9618c23a213c7b712dfdadacf78 [file] [log] [blame]
<html>
<head>
<title>Docbook Toolchain for Khronos Documents</title>
</head>
<body>
<h1>What is Docbook?</h1>
<p> <a href="http://www.docbook.org/">Docbook</a> is a widely used XML
schema for technical documentation(*). It is an open source project
with a great deal of supporting infrastructure and documentation.
Start with the <a href="http://www.dpawson.co.uk/docbook/">Docbook
FAQ</a> and the canonical text <a
href="http://docbook.org/tdg/">DocBook: The Definitive Guide</a>
(since we are using Docbook 4.x, read version 2.0 of the Guide).
<p> Like LaTeX, Docbook is a structural description of a document.
Docbook does <b>not</b> define formatting. Using XSL stylesheets,
Docbook documents can be transformed into many other formats such as
XHTML, PDF, Unix nroff man pages, and Windows HTML Help.
<p> Khronos has agreed to use Docbook as the format for new man pages
and technical specifications created within the group.
This document captures basic information about Docbook
and the toolchain required to use it.
<p> (*) Actually, there are SGML and Relax NG schemas for Docbook
as well. However, for Khronos' purposes we concentrate on
the XML schema.
<h1>Docbook Editors</h1>
<p> Since Docbook documents are XML, it is possible (and perhaps
desirable for smaller documents) to simply use a text editor and
mark up XML by hand. Emacs is reputed to have a Docbook and/or XML
editing mode which may be useful.
<p> There are a variety of free and commercial XML editors. Some are
described in the <a
href="http://www.dpawson.co.uk/docbook/reference.html#d17e1366">Docbook
FAQ</a>. We have experimented with the free Standard version of <a
href="http://www.xmlmind.com/xmleditor/">XMLMind</a> with some
success; unlike many of the other options, XMLMind understands the
Docbook schema and can render Docbook documents in a WYSIWYG-like
fashion, in addition to the straight XML structure editor.
<h1>Docbook Schema</h1>
<p> There are many versions of the Docbook XML Schema. We are currently
using Docbook 4.3 with MathML 2.0 support. See the DOCTYPE
declaration in the sample documents for the specific DTDs.
<h1>XSL Stylesheets</h1>
<p> To transform Docbook documents into final viewable formats, we use
the standard <a
href="http://wiki.docbook.org/topic/DocBookXslStylesheets"> Modular
Docbook XSL stylesheets</a> (version 1.69). These are available
prepackaged for modern Linux systems (although you may have to
manually select the packages) as well as for the Cygwin environment
on Windows. We are using version 1.69 of the stylesheets.
<p> (<b>Note:</b> need links to Cygwin / Red Hat / other Linux distro?
packages).
<h1>Tools</h1>
<p> The Docbook 4.3 DTD is also prepackaged for most systems. Some
additional work is required to install the Docbook 4.3+MathML 2.0
DTD (details to be added).
(<b>Note:</b> need links to Cygwin / Red Hat / other Linux distro? packages).
<p> To transform a Docbook document with the XSL Stylesheets,
a processor like <a href="http://wiki.docbook.org/topic/xsltproc">
xsltproc</a> or Saxon is required. Again, xsltproc
is prepackaged.
(<b>Note:</b> again, need links to Cygwin / Red Hat / other Linux
distro? packages).
<h1>Examples</h1>
<p> A simple example package containing a Docbook document (sample man
page) and Makefile to transform it are <b>here (link TBD)</b>.
<p> Last modified August 13, 2006 by Jon Leech
</body>
</html>