Name

refdbxml — transform XML documents containing RefDB bibliographies

Synopsis

refdbxml [-c fop_config_file] [-f fo_processor] [-h ] [-p xslt-processor] [-s stylesheet] [-t format] file

Description

refdbxml uses the stylesheet driver file that you created with runbib(1) and feeds it to an XSLT processor to transform your DocBook or TEI XML document to one of the supported output formats. If printable output is requested, the intermediate FO output will be further processed by a FO processor.

Options

-c fop_config_file

The path to a custom configuration file for the FO processor FOP.

-f fo_processor

The name of the FO processor used to transform FO files into printable output. Supported values are fop (default), passivetex, xep, and xfor.

-h

Prints a command synopsis on the screen and exits

-i variable

Define a variable that is passed to Jade/OpenJade. Multiple entries are possible. This can be used to conditionally include or exclude parts of the document according to which variable is set.

-p xslt-processor

This determines the XSL processor that is to be used. refdbxml currently knows to handle Xalan, XT, Saxon, and xsltproc.

-s stylesheet

This selects the stylesheet driver file. This file is generated by refdbib(1) (which in turn is called by runbib(1)) and contains additional formatting information.

-t format

Select an output format with this option. Possible values are html\fr, rtf, and pdf.

file

The names of one or more XML files. Each document will be processed separately.

Configuration

Instead of using the command-line switches, refdbxml can also be configured by means of the refdbxmlrc configuration file. As with all refdb configuration files, you may maintain a global copy in /usr/local/etc/refdb/ and one copy per user in $HOME.

Table 15.4. refdbxmlrc

VariableDefaultComment
xslt_processorxsltprocThe name of the XSLT processor used to transform XML documents to html or fo files. Supported values are xsltproc (default), xalan, xt, saxon, saxon-xerces (using the xerces parser instead of the built-in parser)
xslt_classpath/usr/share/javaSpecify the directory which contains the Java classes for Java-based XSLT processors. This variable is not required if you use a non-Java processor (xsltproc).
fo_processorfopThe name of the FO processor used to transform FO files into printable output. Supported values are fop (default), passivetex, xep, and xfor.
fo_classpath/usr/share/javaSpecify the directory which contains the Java classes for Java-based FO processors. This variable is not required if you use a non-Java processor (passivetex).
fop_config_file(none)The path to a custom configuration file for FOP.
outformathtmlSet the default output format. Supported values are html, xhtml, pdf, and rtf. Be aware that pdf and rtf are not supported by all FO processors.

Resolving Public Identifiers

Public identifiers can be resolved to local files if you have a working XML catalog on your system and if your XSLT processor supports XML catalogs. xalan and saxon require additional Java classes to support XML catalogs. For further information, please consult Bob Stayton's book about XSLT.

Files

/usr/local/etc/refdb/refdbxmlrc

The global configuration file of refdbxml

$HOME/.refdbxmlrc

The user configuration file of refdbxml.

/etc/xml/catalog

The global XML catalog file, used to resolve public identifiers. Please note that the location of this file is system-dependent. Also, some XSLT processors do not support catalogs, and others require additional classes or plugins to do so.

Example

We'll transform our document (which is either a DocBook or TEI XML document) to a nice-looking PDF file with the following command:

      ~$ 
      refdbxml -d J.Biol.Chem.fo.xsl -t pdf mypaper.xml
    

Note that we used the FO stylesheet for this purpose. If we want HTML output, we need to change the output type switch and use the corresponding HTML stylesheet:

      ~$ 
      refdbxml -d J.Biol.Chem.html.xsl -t html mypaper.xml
    

See also

RefDB (7), refdbib (1), runbib (1), refdbjade (1).

RefDB manual (local copy) <prefix>/share/doc/refdb-<version>/refdb-manual/index.html

RefDB manual (web) <http://refdb.sourceforge.net/manual/index.html>

RefDB on the web <http://refdb.sourceforge.net/>

Author

refdbxml was written by Markus Hoenicka <markus@mhoenicka.de>.