DocBook

DocBook is an open standard Component Content Management System (CCMS) that allows for document based authoring. The management of content through a CCMS such as DocBook helps technical communicators to more efficiently construct and communicate content with others. [1] This means that documents created using DocBook are primarily intended to be used as lone standing documents, or "books." [2]

DocBook was originally an application of SGML (standard generalized markup language) but is currently and most widely used as an application of XML (extensible markup language). While both SGML and XML are markup languages, XML is more widely used and is easier to implement. This means that the transition of DocBook to XML make it more available and easier to implement.

DocBook allows writers to produce content in multiple output formats including: HTML, XHTML, PDF, and several more for online or printed publication. Because DocBook is now an XML application, documents can be created and edited with any text editor. DocBook authoring tools allow a writer to create documents in a similar manner to a word processor.

Fig 1. Pile of Books. Books are one of the possible outputs of authoring with DocBooks. Img from pixino.com, license Free to use CC0

History

DocBook was first implemented by HaL Computer Systems and O'Reilly & Associates in 1991. DocBook was created for the purpose of holding documents to be interchanged after the documents went through processing to allow for format conversions. DocBook is continually being maintained by OASIS. In its original form, DocBook was used so files could be interchanged. In 1994, the Davenport Group adapted DocBook for publishing directly to paper. The DocBook Technical Committee of OASIS was formed in 1998 and has created an XML version of DocBook. [1]

Why Choose DocBook?

DocBook is most beneficial for writers who are looking to publish a long work and do not expect to reuse content from their current document in future documents. DITA (Darwin Information Typing Architecture) is a topic-based authoring system while DocBook is a document-based authoring system. Though DITA is more widely adopted than DocBook, technical communicators should work with DocBook if they are looking to publish longer texts in a variety of formats. [3] If a writer is looking to publish multiple shorter works, DITA should be considered as a component content management system for those types of projects.

Benefits

  • Excellent for development of longer documents

  • "Particularly well suited to books and papers about computer hardware and software" [4]

  • Extensive set of intuitive element tags

  • Allows authors to publish one work over multiple outputs

  • Easy document sharing [5]

  • Use of XML makes documents easy to transfer to other formats and outputs.


Drawbacks

  • Requires authors to capture all requirements of their prospective users [6]

  • Overkill for shorter documents

  • Can be unpleasant to author within software [7]


Authoring With DocBook

As an application of XML, Docbook is constructed with basic components of XML. Writers unfamiliar with XML should see Coding for more information or should implement the use of a paid authoring tool that will allow them to create and edit documents in a manner similar to word processors. A few DocBook authoring tools are: oXygen XML Editor, XMLMind, and XMetaL. [8] The use of any of these tools allows a writer to focus less on ensuring valid XML and more on the content of the document.

Without the use of a paid authoring tool, writers can download a DocBook Document Type Declaration (DTD) from DocBook.org and publish using any XML parser. With any XML document, the most basic components of DocBook document include: an XML declaration, a DTD, and a root element. Most DocBook documents will also include child elements and likely will include more than one root element. After validating the XML, the DocBook document will be ready to be published. [9] The examples below show how a DocBook document can be written with XML and published with a downloaded DTD.

Fig 2. Example of XML declaration and DTD. Screenshot by Jamie Willes 2022

Start with a standard XML declaration and DTD.

Fig 3. Example of root elements in DocBook. Screenshot by Jamie Willes 2022

Add a root element. In this example, the root elements added in this example include: title, chapter, and paragraph.

Fig 4. Example of child elements in DocBook. Screenshot by Jamie Willes 2022

Add as many child elements as necessary. In this example, child elements added include additional chapter, title, and paragraph elements.

Fig 5. Example of a DocBook document published in PDF format. Screenshot by Jamie Willes 2022

Validate XML and Publish. In this example, the DocBook document is published in a PDF format from an XML parser.

References

[1] Samuels, Jacquie. “Types of Content Management Systems Explained (CMS, DMS, CCMS, ECMS, and others).” Techwhirl, 21 Jan. 2013.

[2] https://docbook.org/

[3] Andersen, Rebekka, and Tatiana Batova. “The Current State of Component Content Management: An Integrative Literature Review.” IEEE Transactions on Professional Communication, vol. 58, no. 3, 2015, pp. 247–70.

[4] Walsh, Norman. "The DocBook schema." Committee Specification. Version. OA (2008).

[5] Martínez-Ortiz, Iván, et al. "Using DocBook and XML Technologies to Create Adaptive Learning Content in Technical Domains." Int. J. Comput. Sci. Appl. 3.2 (2006): 91-108.

[6] Di Iorio, Angelo, et al. “Dealing with Structural Patterns of XML Documents.” Journal of the Association for Information Science and Technology, vol. 65, no. 9, 2014, pp. 1884–900.

[7] https://tldp.org/LDP/LDP-Author-Guide/html/docbook-why.html

[8] https://github.com/docbook/wiki/wiki/

[9] https://tdg.docbook.org/tdg/5.0/docbook.html

Last updated by Jamie Willes on November 6, 2022.