DocBook to LaTeX Publishing
|  | Next

# DocBook to LaTeX Publishing

## User Manual

### Benoît Guillon

Reviewed by : Andreas Hoenen

v0.3.12

Revision History
Revision 01 | 2009/05/05 | B. Guillon
The manual does not include the change history anymore. The change history is now in the release note. The XSL Parameters are now described as reference entries.
Revision 02 | 2009/06/21 | B. Guillon
Add a section about the new `set` support, and a section about how to extend the verbatim rendering.
Revision 03 | 2011/07/03 | B. Guillon
Add a section about the new HTML table support, and a section about the PyPI distribution.
Revision 04 | 2012/04/10 | B. Guillon
Update documentation for release 0.3.3.
Revision 05 | 2012/06/03 | B. Guillon
Update documentation for release 0.3.4.
Revision 06 | 2014/05/26 | B. Guillon
Update documentation for release 0.3.5.
Revision 07 | 2015/05/15 | B. Guillon
Update documentation for release 0.3.6: add the ability to use a texpost python plugin, and new index capabilities.
Revision 08 | 2015/08/06 | B. Guillon
Update documentation for release 0.3.7: add section the section called “Chapter and Section numbering”.
Revision 09 | 2016/07/20 | B. Guillon / Karl O. Pinc
Update documentation for release 0.3.8: add appendix Appendix B, Dblatex Processing Instruction Reference, and sections the section called “XML Configuration File Format”, the section called “Musical Notation”.
Revision 10 | 2016/07/24 | B. Guillon / Karl O. Pinc
Update documentation for release 0.3.9: add new features in the section called “XML Configuration File Format” and complete some sections.
Revision 11 | 2017/04/03 | B. Guillon
Update documentation for release 0.3.10: add the features of the section called “Book Covers”, and put some cosmetic changes in the section called “Dblatex Configuration File”.
Revision 12 | 2019/09/10 | B. Guillon
Update release note for version 0.3.11 that is a bugfix release.
Revision 13 | 2020/01/10 | B. Guillon
Update release note for version 0.3.11-py3: dblatex fork for python3.
Revision 14 | 2020/11/07 | B. Guillon / P. Reinholdtsen
Update release note for version 0.3.12 that is a bugfix release.

Table of Contents

Documentation
1. Introduction
  What about DB2LaTeX?
  Features
  Version
  Change History
  Publishing Principles
    Backend Drivers
    XSL Stylesheets
    Python Post Processing
    LaTeX Style Package
2. Installing the Package
  Content
  Installing on Unix like Systems
    Dblatex Packages
    Dependencies
    Installation
  Installing on Windows
    Dependencies
    Installation
3. Using dblatex
  Reference
    dblatex — convert DocBook to LaTeX, DVI, PostScript, and PDF
  Output Formatting Style
    How it works
    Adding a New Formatting Style
  Publishing Outputs
    Publishing a single document
    Publishing a Set of Books
  Global Page Setup
  Book Covers
  Chapter and Section numbering
    Depth of Section numbering and Table Of Content
    Using the latex style for section numbering
    Using the `label` attribute
  Figure Inclusion
    Presentation
    Converting on the fly
    Paths Lookup
  Creating Tables
    Limitations
    Table Width
    Tables without colwidth
    Tables with mixed colspec
    Tables with proportional and fixed colwidth
    Tables with fixed colwidths
    Automatic Column Width
    Informal Table LaTeX Styles
    Tables with morerows
    Landscape tables
    Smaller tables
    Coloured tables
    HTML Tables
  Correcting Poor Formatting
    Floats
    Tables
    Examples
    Hyphenation and over-long lines
    Characters and Manual Spacing
  Writing Mathematics
    Writing LaTeX Mathematical Equations
    Writing MathML equations
  Musical Notation
  Extending the Verbatim Rendering
    Dblatex Specific Options
    Scaling Feature
    Formatting embedded elements
    Creating a new Verbatim Environment
  Creating an Index
    Internationalized Indexes
  Writing a Bibliography
    Using Bibliography Entries
    Using BibTeX Databases
    Natbib Citations
  Document Revisions
  Locale Support
    Document Encoding
    Babel Languages
    CJK Languages
    Mixing the languages
  Using XRefsyle and Olinks
    Specific xrefstyle for `ulink`
  Footnotes
    Footnote Numbering Scope
    End Notes
4. Customization
  Using XSL Parameters
  Setting Command line Parameters
  Using Processing Instructions
  XSL User Stylesheet
    Changing the XSL parameter values
    Overriding some templates
  Customized LaTeX style
    Reusing an existing LaTeX style
    Package options
    Needed packages
    DocBook interface
    Debugging your Style
  Latex post process script
    Post latex compilations
    Post processing with a Python Plugin
  Dblatex Configuration File
    XML Configuration File Format
    Deprecated Text Configuration File Format
    Style Paths
  Customization Precedence
5. FAQ
6. Thanks
  Sponsors
  Contributors
  Pioners
A. Dblatex XSL Parameter Reference
  Admonitions
    figure.caution — Figure to use to render a `caution` block.
    figure.important — Figure to use to render a `important` block
    figure.note — Figure to use to render a `note` block
    figure.tip — Figure to use to render a `tip` block
    figure.warning — Figure to use to render a `warning` block
  Callouts
    callout.linkends.hot — Hot links callout items
    calloutlist.style — Callout list style to apply
    callout.markup.circled — Use black circles for numbering the callout items?
    co.linkends.show — Show the references to calloutlist items next to the markup
    imageobjectco.hide — Hide the callout markups on the image
  ToC/LoT/Index Generation
    doc.lot.show — Specifies the Lists of Titles to display
    doc.toc.show — Print the Table Of Contents
    titleabbrev.in.toc — Should `titleabbrev` be put in the TOC instead of `title`?
    toc.section.depth — How deep should recursive sections appear in the TOC?
    bibliography.tocdepth — How bibliography section and subsections appear in TOC
    colophon.tocdepth — How colophon section and subsections appear in TOC
    dedication.tocdepth — How dedication section and subsections appear in TOC
    preface.tocdepth — How preface section and subsections appear in TOC
    glossary.tocdepth — How glossary section and subsections appear in TOC
    index.tocdepth — How index section and subsections appear in TOC
    latex.index.tool — Define the tool to use to build an index
    latex.index.language — Force the language to use for index sorting
    refentry.tocdepth — How refentry section and subsections appear in TOC
  Processor Extensions
    alt.use — Always use `alt` to display equations
    tex.math.in.alt — TeX notation used for equations
  Automatic labelling
    bibliography.numbered — Should `bibliography` headings be numbered?
    glossary.numbered — Should `glossary` headings be numbered?
    index.numbered — Should `index` headings be numbered?
    refentry.numbered — Should `refentry` headings be numbered?
  Meta/*Info
    doc.pdfcreator.show — Set the PDF metadata Creator field
    make.single.year.ranges — Print single-year ranges (e.g., 1998-1999)
    make.year.ranges — Collate copyright years into ranges?
  Reference Pages
    funcsynopsis.decoration — Decorate elements of a `funcsynopsis`?
    funcsynopsis.style — What style of `funcsynopsis` should be generated?
    function.parens — Generate parens after a function?
    refclass.suppress — Suppress display of refclass contents?
    refentry.generate.name — Output NAME header before `refname`s?
    refentry.xref.manvolnum — Output `manvolnum` as part of `refentry` cross-reference?
  Tables
    newtbl.autowidth — Table column widths sized by latex
    newtbl.bgcolor.thead — Background color of the `thead` rows
    newtbl.default.colsep — By default draw a vertical line between columns
    newtbl.default.rowsep — By default draw a horizontal line between rows
    newtbl.format.tbody — LaTeX formatting for body table cells
    newtbl.format.tfoot — LaTeX formatting for foot table cells
    newtbl.format.thead — LaTeX formatting for head table cells
    newtbl.use.hhline — Draw the horizontal lines with the `hhline` package
    table.continue.caption — Caption text for continued table titles
    table.default.position — Default table float placement policy
    table.default.tabstyle — Default table style to apply
    table.in.float — Use or emulate a float to display a formal table?
    table.title.top — Title on top of the `table` float
    default.table.rules — The default column and row rules for tables using HTML markup
    default.table.width — The default width of tables
  Linking
    latex.hyperparam — Options/parameters passed to `hyperref`
    Olink Parameters — Parameters to configure Olinks
  Cross References
    insert.xref.page.number — Turns page numbers in xrefs on and off
    insert.xref.page.number.para — Turns page numbers in xrefs to paragraphs on and off
    xref.hypermarkup — Wrap the entire the `xref` markups with an hyperlink?
  Lists
    term.breakline — Put the term description on the next line?
    variablelist.term.separator — Text to separate `term`s within a multi-term `varlistentry`
  QAndASet
    qanda.defaultlabel — Sets the default for defaultlabel on QandASet.
  Bibliography
    biblioentry.item.separator — Text to separate bibliography entries
    biblioentry.numbered — Should `biblioentry` item labels be numbered?
    citation.default.style — Default natbib citation style to apply
    citation.natbib.options — Specifies the natbib package options
    citation.natbib.use — Use natbib to display citations
    latex.bibfiles — Defines the default BibTeX database to use
    latex.biblio.output — Defines how the BibTeX bibliographic entries are printed out
    latex.biblio.style — Default BibTeX style to apply
    latex.bibwidelabel — Template of the widest bibliography label
  Glossary
    glossterm.auto.link — Generate links from glossterm to glossentry automatically?
  Miscellaneous
    annotation.support — Enable the `annotation` support
    beginpage.as.pagebreak — Force a page break when set to 1. Otherwise `beginpage` does nothing.
    doc.section.depth — Depth of the section numbering
    endnotes.heading.command — LaTeX command of the endnotes headings
    endnotes.heading.groups — Display the endnotes by groups
    endnotes.heading.style — Style of the heading of endnotes groups
    endnotes.properties — Properties of the latex package endnotes setup
    equation.default.position — Default equation float placement to apply
    example.default.position — Default example float placement to apply
    example.float.type — Select the type of float for example elements
    figure.anchor.top — Cross reference anchor on top of the `figure` float
    figure.default.position — Figure float placement policy
    figure.title.top — Title on top of the `figure` float
    filename.as.url — Hyphenate a `filename` like if is was an URL
    footnote.as.endnote — Use footnotes as endnotes
    hyphenation.format — Predefined formats to hyphenate
    linenumbering.scope — Templates on which the global linenumbering setup applies
    linenumbering.default — Default linenumbering setup for literal environments
    linenumbering.everyNth — Indicate which lines should be numbered
    literal.layout.options — Override the options passed to the `listing` package
    literal.lines.showall — Show the last empty lines in the literal environments?
    literal.width.ignore — Ignore the literal environment width attribute
    literal.class — Default class to apply to `literallayout` blocks
    literal.role — Default role to apply to verbatim blocks
    literal.environment — Latex environment used to format verbatim blocks
    literal.extensions — Enable extended verbatim features
    mediaobject.caption.style — Font style of the mediaobject caption text
    monoseq.hyphenation — Specifies one of the supported monoseq hyphenation policy
    monoseq.small — Use a smaller font to render monoseq portions of text
    pdf.annot.options — PDF text annotations rendering options
    segmentedlist.as.table — Format segmented lists as tables?
    seg.item.separator — Separator to use between several `seg`s
    show.comments — Display `remark` elements?
    texlive.version — Version of the installed Tex Live Distribution
    ulink.footnotes — Generate footnotes for `ulink`s?
    ulink.show — Display URLs after `ulink`s?
    xref.with.number.and.title — Use number and title in cross references
  Graphics
    imagedata.boxed — Put the images into a framed box
    imagedata.default.scale — Specifies the default image scaling properties
    imagedata.file.check — Make the latex compilation robust to missing images
    keep.relative.image.uris — Should image URIs be resolved against xml:base?
  Chuncking
    set.book.num — Select a single book or all the books to compile from a `set`
    use.id.as.filename — Use ID value of chunk elements as the filename?
  Pagination and General Styles
    page.height — The height of the physical page
    page.margin.bottom — The bottom margin of the page
    page.margin.inner — The inner page margin
    page.margin.outer — The outer page margin
    page.margin.top — The top margin of the page
    page.width — The width of the physical page
    paper.type — Select the paper type
    geometry.options — Raw options to pass to the geometry package
    doc.alignment — Specifies the text alignement of the document
    doc.collab.show — Print the document collaborators (authors, etc.) in a table
    doc.layout — Specifies the overall document layout.
    doc.publisher.show — Print the dblatex logo on the cover page?
    draft.mode — Select draft mode
    draft.watermark — Print a Watermak on each page in draft mode?
    latex.engine.options — Extra arguments to pass to the TeX engine
    latex.class.article — LaTeX document class to use for `article` documents
    latex.class.book — LaTeX document class to use for `book` documents
    latex.class.options — Options passed to the \documentclass command
    latex.encoding — Encoding of the latex document to produce
    latex.unicode.use — Use passivetex unicode support?
    latex.output.revhistory — Print the `revhistory` table?
  Font Families
    body.font.family — The default font family for body text
    cjk.font — Fonts to use in CJK environments
    monospace.font.family — The default font family for monospace environments
    sans.font.family — The default sans-serif font family
    xetex.font — Specifies the fonts that XeTeX must use
  Localization
    korean.package — Package included when Korean language is used
    latex.babel.language — Force the loaded babel language
    latex.babel.use — Disable the use of babel, whatever the document language is
  Prepress
    crop.marks — Output crop marks?
    crop.paper.type — Select the paper type for paper with crops
    crop.page.width — The width of the physical crop page
    crop.page.height — The height of the physical crop page
    crop.mode — How to display crops
    crop.options — Raw options passed to the crop package
B. Dblatex Processing Instruction Reference
  Bibliography
    bibtex — Specify how to fill a Bibliography with BibTeX
    dblatex citestyle — Sets Natbib Citation Style
  LaTeX
    latex — Insert Arbitrary text into the LaTeX file
  Miscellaneous
    dblatex angle — Rotates an `imagedata` Image
    texmath delimiters — Disable The LaTeX Mathematical Delimiters Control
  Tables
    dblatex bgcolor — Sets the Background Color of A Table Element
    dblatex table-width — Control the Automatic Width of a Table
  Lists
    dblatex autowidth — Column sizing by LaTeX in `segmentedlist` tables
    dblatex colwidth — Specifies a column width for `segmentedlist`s presented as tables
    dblatex list-presentation — Specifies presentation style for a `segmentedlist`

List of Figures

1.1. Transforming Process
3.1. Parameter Lengths used for Page Setup

List of Examples

3.1. Choosing the DB2LaTeX style
3.2. DocBook 5 Front and Back Covers
3.3. DocBook 4 Front Cover
3.4. Figure inclusion
3.5. Figure conversion
3.6. Figures lookup
3.7. Equation taken from TDG
3.8. Equation with user delimiters
3.9. Inlined Equation
3.10. Equation in a block
3.11. Equation in a float
3.12. Equation without a title
3.13. Index Entry
3.14. XSL Index Language Setup
3.15. A Bibliography
3.16. Bibliography using BibTeX databases
3.17. Writing a document with endnotes
4.1. Table width specified with a Processing Instruction
4.2. Overriding templates
4.3. Reused LaTeX style
4.4. Texpost Python Plugin Example
4.5. User Manual Configuration File
4.6. Customization Precedence
A.1. Configuring with latex.hyperparam

List of Equations

3.1. Equation block with align tabs
3.2. Simple Formula

|  | Next
|  | Documentation