Two of the more popular dialects for XML authoring are those of the Text Encoding Initiative (TEI Consortium, 2000), and DocBook (DocBook Technical Committee, 2005). A third, and relative newcomer on the block is the Darwin Information Typing Architecture (DITA) (IBM, 2000), though it remains outside the scope of this package. Both of the former dialects have extensive facilities for encoding or encapsulating bibliographic information, but their associated tools are devoid of comprehensive bibliographic authoring and collation facilities (to the best of the present authors' knowledge).
The program RefDB (Hoenicka, 2005) fills that void. RefDB implements a relational database interface to various database management systems such as SQLite, MySQL and PostgreSQL. RefDB has a two-tier client-server architecture, providing methods for adding, retrieving and searching out reference data in externally managed databases. RefDB also provides convenience commands and interfaces for editing and annotating the reference data contained therein and for formatting the citations and bibliographical data that are emitted. Typically "cooked", i.e. preformatted, citations and bibliography entries are then simply included in, or with, the source TEI or DocBook douments, written in iether XML or SGML formats.
But as powerful as RefDB is, there are some instances where the overhead of a full database management system may be inexpedient, or might unnecessarily restrict the portability of the source document. Maybe you work in a small laboratory without the man-power to devote to comprehensive reference management, or perhaps a document needs to exist standalone in its entirety, or will be used in non-standard ways, such as submission to different journals (not that You would ever need that!), or inclusion in laboratory webpages and productivity manuals. In such situations it could well be useful to apply standard bibliographic and citation style formatting to the complete document, formatting it in different ways consistent with those different purposes.
For those somewhat esoteric reasons, some of the useful sorting and formatting features of the
RefDB package have been externalised here as a CITESTYLE
(Hoenicka, 2005b)
driven eXtensible Stylesheet Language Transformation
(W3C, 1999).
RefDB-lite is XSLT1.0 compatible but makes considerable use
of the standard extension function, exsl:node-set()
.
In fact that is a fundamental
prerequisite for any XSLT1.0 engine intended to apply these stylesheets.
For the moment, RefDB-lite has been written explicitly with DocBook output in mind and, in fact, that is further restricted to XML documents rather than the combined XML and SGML support of RefDB. However, there are no compelling reasons why analogous XML transformation stylesheets could not be written to extend formatting to other documentation systems, such as TEI. For that matter, its possible that the programmatic logic could be mapped into DSSSL to cater for SGML documents, though this is left as an exercise for the reader.
Good luck.