Bibutils

Revision as of 21:16, 5 November 2023 by WikiSysop (talk | contribs) (Group list of Bibutils conversions)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This page describes the refbase integration with Bibutils.

About Bibutils

Bibutils (bibliography conversion utilities) is a set of command line utilities which interconvert between various bibliography formats using a common XML intermediate called MODS. Bibutils currently supports following conversions:

  • to MODS XML:
    • BibTeX -> MODS XML (bib2xml)
    • Copac -> MODS XML (copac2xml)
    • Endnote (Refer format) -> MODS XML (end2xml)
    • Endnote (Endnote XML format) -> MODS XML (endx2xml)
    • ISI Web of Science -> MODS XML (isi2xml)
    • Pubmed XML -> MODS XML (med2xml)
    • RIS -> MODS XML (ris2xml)
  • from MODS XML:
    • MODS XML -> ADS (xml2ads)
    • MODS XML -> BibTeX (xml2bib)
    • MODS XML -> Endnote (xml2end)
    • MODS XML -> ISI Web of Science (xml2isi)
    • MODS XML -> Reference Manager/RIS (xml2ris)
    • MODS XML -> Word 2007 XML Bibliography format (xml2wordbib)

Bibutils is available for various platforms and can be downloaded as source code from the Bibutils home page or. Older Bibutils versions are available as binaries from the Bibutils mirror site. Bibutils can also be downloaded for various Linux distributions or installed via platform-specific package management systems:

refbase integration with Bibutils

refbase-0.9.0 and above requires Bibutils (version 3.21 or greater) for following formats:

  • import:
    • BibTeX
    • Copac
    • Endnote (Refer format)
    • Endnote (Endnote XML format)
    • PubMed XML
    • MODS XML
  • export:
    • ADS
    • BibTeX
    • Endnote
    • ISI Web of Science
    • Reference Manager/RIS
    • Word 2007 XML Bibliography format

I.e., to import or export any of the above listed formats, you'll need to install Bibutils on your server.

Installing Bibutils for use with refbase

In general, you can install the Bibutils programs wherever you like, but they must be executable by your server, i.e. they must be located within an executable path and the Bibutils programs itself must be executable. However, if the safe_mode setting in your active php.ini file is set to On, then you'll need to put the Bibutils programs within the directory that's specified in the safe_mode_exec_dir setting. Information on how to locate your active php.ini file is given here. Usually, the directory that contains the Bibutils programs should have permission 750 (rwxr-x---), and the Bibutils programs should have permissions 755 (rwxr-xr-x).

Once you've installed Bibutils on your server, the path to the Bibutils programs must be set accordingly in the refbase MySQL table depends. The easiest way to setup refbase with Bibutils is to do so upon installation using the provided install.php script. The install.php script will attempt to locate Bibutils for you if it is installed on your server.

A method to ensure that the install script locates Bibutils when your Bibutils is installed to a non-standard path is to symlink your Bibutils path into the directory containing install.php with the name "bibutils". This approach requires that your web server is configured to follow symlinks.

% ln -s /path/to/bibutils /path/to/refbase/bibutils

Alternatively, if you'd like to enable Bibutils support for an existing refbase installation, you can set the path to Bibutils directly by issuing following MySQL command via a tool such as phpMyAdmin or from within your MySQL command line interpreter:

UPDATE depends SET depends_path = "/path/to/bibutils/" WHERE depends_external = "bibutils";

Note that, in the above command, you must replace /path/to/bibutils/ with the actual (full) directory path to your Bibutils programs. On Windows, you probably need to use backslashes as path separators (\path\to\bibutils\). Also note that the given path must end with a slash.

Finally, when setting up Bibutils for an existing refbase installation, please make sure that Bibutils is properly enabled for refbase by issuing following MySQL command:

UPDATE depends SET depends_enabled = "true" WHERE depends_external = "bibutils";

Let us know if you run into problems.