DocBook XSL

The DocBook XSL stylesheets are a set of XSLT stylesheets for the XML-based DocBook language.

Purpose
DocBook is a semantic markup language. That is, it specifies the meaning of the elements in a document, not how they are intended to be presented to the end user. It provides separation between the content of the document and the visual representation. While DocBook is a readable markup language, it is not intended to be read by end-users in its DocBook form.

The purpose of DocBook XSL is to provide a standard set of transformations from DocBook to several presentational formats.

Output formats
DocBook XSL provides for transforms into the following formats:


 * HTML, both as single pages and in a "chunked" format that outputs sections to different pages.
 * XHTML
 * XSL-FO, and from there, usually PDF
 * Man Pages
 * WebHelp

Web help
Webhelp is a chunked HTML output format in the DocBook xslt stylesheets that was introduced in version 1.76.1. The documentation for web help also provides an example of web help and is part of the DocBook xsl distribution. Its major features include CSS-based page layout without frameset, multilingual full content search, Table of contents (TOC) pane with collapsible TOC tree, Auto-synchronization of content pane and TOC. This web help format was originally implemented by Kasun Gajasinghe and David Cramer as part of the Google Summer of Code 2010 program.

DocBook XSL also has transformations to slide-like formats for HTML and XSL-FO. EPUB support is currently experimental.

Configuration
DocBook XSL's stylesheets are highly configurable. Each of the different formats has a number of XSLT parameters available for simple customization. For example, the XSL-FO transforms allow the user to define the size of the pages. Additionally, the XSLT documents themselves are modular; it is possible for the user to add, change, or replace particular levels of functionality. This can allow DocBook XSL to process new documentation tags added to the standard DocBook, or to simply change how the XSLTs generate the resulting format.