DocBook investigation: progress update
Quick update on the DocBook investigation. I've tried a number of schema-aware XML editors for generating DocBook sources. Didn't like any of them. The problem, I think, is one of familiarity: I don't know the DocBook schema very well, so vanilla schema-assisted editing doesn't give me enough support. I tried saving OpenOffice documents as docbook. This works, but doesn't seem to offer much in the way of fine-grain control of the generated XML. Also, I couldn't get it to round-trip nicely. The best solution I've found so far is XMLMind. There's a free standard edition and a payware professional edition. I've only tried the standard edition so far. It's a Java/Swing application, with a slightly odd feel to the UI, but I quickly found myself adjusting. So far, it has been easily the most effective solution I've found for editing DocBook in XML, but with a WSIWYG (-ish) presentation. I've had to step outside the editor and directly hack the XML once or twice, for example to insert XInclude instructions to modularise my thesis into one-chapter-per-file chunks. But XMLMind was easily able to cope with the XIncludes once I had entered them. There may be a way of doing XInclude from the interface, but I couldn't see it. The standard edition of XMLMind doesn't generate PDF files: you need the professional edition for that. However, I
fop from JPackage.org, and that works fine. It was nice to see that XMLMind is very up-to-date with the XSL stylesheets from SourceForge for transforming DocBook.
Next goal is bibliography processing. DocBook can handle references already, I just need my refs in the appropriate format. I have a large collection of existing reference data in ProCite for MS Windows. For managing the references on Linux,
RefDB looks like a good choice. Unfortunately, I've not been able to install it so far due to incompatibilities with
libdbi on Fedora Core 3. I've asked on the refdb list to see if anyone has a solution. It may also be that Fedora Core 4 has the more up-to-date libraries when it ships (the problem isn't just
libdbi, but conflicts with the FC3 installed MySQL and PostgresQL). Fingers crossed. In the meantime, I haven't yet found a ProCite to refDB translator. ProCite can export data as a comma-delimited field, but the meanings of the fields are context-dependent on the reference type. I have a sinking feeling I may end up writing my own ProCite to XML converter. Sigh.
Final note: I've been using Bob Stayton's DocBook XSL: The Complete Guide, second edition, as one source of assistance in learning my way around DocBook's world. It's an excellent resource, thoroughly recommended.