[Tex/LaTex] ny advantage to using \addbibresource over \bibliography

best practicesbiberbiblatex

I've always used \bibliography to tell BibTeX where my bibliography is, and when I moved to biblatex, I didn't change. I see a lot of biblatex answers use \addbibresource instead.

What is the advantage of \addbibresource over \bibliography?

Best Answer

\addbibresource features an optional argument that allows you (among other things) to specify the location of a (local or remote) resource and the date type of the resource (e.g., bibtex, ris). See section 3.7.1 of the biblatex documentation (ver. 3.15, dated August 19, 2020) for details.

Note that when using \addbibresource (which was introduced in biblatex v1.2), "files must be specified with their full name, including the extension", i.e., instead of

\bibliography{<mybibfile>}

you must use (assuming the standard .bib file format)

\addbibresource{<mybibfile>.bib}

EDIT: Two additional notes about using \addbibresource:

  • Contrary to \bibliography, one can't use a comma-separated list to load multiple .bib files (\bibliography{bibfile1,bibfile2}). Instead, one must invoke \addbibresource multiple times.

  • As PLK points out in his comment, loading a remote bibliography resource requires biber as backend.