DocBook is a collection of standards and tools for technical
publishing. DocBook was originally created by a consortium
of software companies as a standard for computer documentation.
But the basic "book" features of DocBook can be
used for other kinds of content, so it has been adapted to
The elements of a publishing system based on DocBook include:
- DocBook Document Type Definition (DTD).
- XML writing tools.
- DocBook XSL stylesheets.
- Processing tools.
The DocBook DTD
The core DocBook standard is the DocBook Document Type Definition
(DTD) maintained by the DocBook Technical Committee in OASIS.
The DTD defines the vocabulary of content elements that an
author can use and how they relate to each other. For example,
book element can contain a
element, any number of
para elements for paragraphs,
and any number of
chapter elements. The DTD is
available in both XML and SGML versions. See DocBook:
The Definitive Guide to learn more about the DocBook DTD.
XML writing tools
Using the DTD and XML syntax, authors mark up their text
content with tag names enclosed in angle brackets like
The markup is similar to HTML, but with more tags and tighter
rules.As with HTML, you can use a plain text editor to write
HTML. But it helps to use a writing program that keeps track
of the XML tag names and rules. See the DocBook
Wiki website for more information on writing tools.
DocBook XSL stylesheets
A DocBook file contains no information about how to format
it. That information is kept in a separate stylesheet file.
The most powerful and flexible stylesheets for DocBook are
the DocBook XSL stylesheets written by Norman Walsh. These
free stylesheets can produce HTML and print output from the
same DocBook files. The Sagehill Enterprises' book DocBook
XSL: the Complete Guide provides more information.
To apply an XSL stylesheet to a DocBook file, you use an
XSLT processor such as Saxon or xsltproc. The XSLT processor
can generate HTML directly. For print, it generates an intermediate
XSL-FO (formatting objects) file. That file is then processed
with an XSL-FO processor to product PDF or PostScript output
for printing. The Sagehill Enterprises' book DocBook
XSL: the Complete Guide also provides more information
about processing tools.
Who uses DocBook?
- IBM Linux Technology Center
- Sun Microsystems, Inc.
- Linux Documentation Project
- Free BSD
- Hewlett Packard
- and many more
When is DocBook appropriate?
- Multiple output formats.
- Multiple releases over time.
- Large documentation sets.
- Batch processing environment.
- Shared authoring.
When is DocBook not appropriate?
- Highly formatted documents like magazines.
- Short documents.
- Authors who know nothing of XML.
- One-off documents.