The astute author would note that DocBook permits
bibliography
elements within
appendix
, article
, book
, chapter
, glossary
, part
, preface
,
sect1
, sect2
, sect3
, sect4
, sect5
and section
parents.
RefDB-lite, should generally work quite happily with those. However, it is
technically possible to create a complete nonsense hierarchy without too much effort,
such as the following pseudo DocBook structure:
<set> <setinfo> <citation/> <!-- With no possible target bibliography --> </setinfo> <book> <bibliography id="bib1"/> <chapter> <citation/> <!-- definitely pointing to bib2 --> <bibliography id="bib2"/> </chapter> <chapter> <citation/> <!-- Which bibliography should this point to?--> </chapter> <bibliography id="bib3"/> <appendix> <citation/> <!-- Which bibliography should this point to ?--> </appendix> </book> </set>
Clearly there is ample scope for processing confusion. But, it is to be hoped that the wary author will exercise a modicum of restraint in their placement of bibliographies, despite the flexibility that DocBook provides.
Another major pitfall lies with the mismatch between the RISX, and DocBook "raw" bibliographic formats, and the application of the CITESTYLE formatting thereof. To be clear, RISX is a relatively simple mapping into XML of the aged, but widely supported, RIS bibliographic information format. Although useful, RIS, is rather crude in terms of detailed semantic and formatting information it can handle. The RefDB CITESTYLE formatting specification was designed to reflect the keys and elements of the RDBMS relational tables into which RefDB interally partitions and disects the imported RIS data. In contrast, the capacity of DocBook to hold "raw" bibliographic information, is almost limitless, though not necessarily clear, concise, easy to author or unique.
As a result there are several issues that will need careful consideration. In particular, can the representation of dates in the RefDB exported RISX be standardised in a numerical format? Are there better ways to handle journal series abbreviations? Can use of the USERDEFn and MISCn attributes be standardised across different citation styles? Could corporate authors, editors and publisher items be identified and transformed more consistently? And does the current RefDB-lite RISX (Hoenicka, 2005d) to DocBook "raw" conversion process rigorously capture all the intricacies of the source format?
Other issues will arise in the form of bugs and defects of the current XSL implementation of RefDB-lite, for instance RISX uses an abbreviated journal title compactification scheme whose expansion hasn't yet been implemented here
Another glaring ommission is that ordering of multiple references in a multi-biblioref citation, according to a numeric citation style, does not apply ascending or descending date ordering. Of course you could do it yourself, but this is a computer dammit. It automates things.
A third example arose with the handling of olink
s in a
handcrafted DocBook "raw" biblioentry, that exposed a deficiency in the
underlying DocBook style sheets.
If olink
s are added within an internal bibliography, resolving those in the
DocBook style sheets requires customising the xref.xsl
olink
template
to support <xsl:param name="context" select="/"/>
.
Then modify its document($target.database.filename,/)
statement to use
document($target.database.filename,$context)
(Potentially this could be remedied in the DocBook XSL stylesheets, but of course
noone ever needed it before).
You will have to pass the context parameter to the select.target.database
template as well (called within the olink template) and then repeat the above
for the common/olink.xsl
select.target.database
template too.
The problem is that the olink
is coppied into a
temporary result tree with an obscure base:uri
,
whereas document()
needs to resolve the
olink
with respect to the source DocBook documents identifier
in the olink
database (hmmm, maybe we could copy the document ID
to the rootnode of the temporary tree?).
Thats about it. Enjoy!