We recently started using DocBook for generating the Release-Notes for the different products. The release notes document, is setup as a DocBook 'book' (one file). This file contains some general info and the XInclude references to the chapters (and optional the appendixes).
Each release version of the product, gets its own chapter (as a separate file). One of the sections contains the changes (of that release). The details of that section are extracted from BugZilla and placed in a separate file (in a directory target/docbook-generated). This section starts with an DocBook table which contains an summery off all the changes. Then for each row in the table, a detailed simple-section is followed. (We created a own Maven plug-in for this).
The release notes contain many times all kind of additional tables. The data in those tables is already available in different forms. So we created an other Maven plug-in which can convert csv based data into a DocBook table. Then the relevant data is easy to update / modify and they get automaticly included in the relevant chapter, as long as the table in reference correctly. (A warning / error is given when that happens.)
These csv tables, the chapter files and the release-notes file are all checked in along with the code of the project. This has several advantages, which developers see as obviously, but which are sometimes unknown to (technical) writers. Some are like:
- easy checking of differences (good for reviewing new version of a book / article)
- multiple users can edit / update the same document in parallel
- branching of sources (SCM system)
Other huge advantages are:
- Writers / developers can both update / add / correct the document (this was one of the problems we had)
- Consistent look & feel, of the output document(s)
- No time is wasted, with updating indexes etc etc
- Automaticly building of documents (through Maven / Hudson) same as compiling code
- Documents are close-by the product code (check-out as one project!) So no need to search for documents (easy to render by Maven target)
- Easy inclusion of general sections like Copyrights, Legal stuff etc.
- Easy included into the created installer (IzPack, as Maven plug-in)
Long term advantages:
- If the house style of the company changes, only a few new style-sheet is required, and then all the documents, can be re-rendered (or will get the new style, as soon as the product is released again).
This is just a quick overview of what we did do. There is no real issue, why we should not use this for all our documentation.
It actually was the second time I did do this trick, to generate release-notes, with DocBook. It brings a lot of advantages and saves a lot of dull work for each release!