Bibliography Latex Package

When it comes to bibliography management packages, there are three main options in LaTeX: bibtex, natbib and biblatex. Biblatex is a modern program to process bibliography information, provides an easier and more flexible interface and a better language localization that the other two options. This article explains how to use biblatex to manage and format the bibliography in a LaTeX document.

[edit]Introduction

A minimal working example of the biblatex package is shown below:

\documentclass{article}\usepackage[utf8]{inputenc}\usepackage[english]{babel}   \usepackage{biblatex}\addbibresource{sample.bib}   \begin{document} Let's cite! The Einstein's journal paper \cite{einstein} and the Dirac's book \cite{dirac} are physics related items.   \printbibliography   \end{document}

There are four bibliography-related commands in this example:

Imports the package biblatex.
Imports the bibtex data file sample.bib, this file is the one that includes information about each referenced book, article, etc. See the bibliography file section for more information.
This command inserts a reference within the document, [1] in this case, that corresponds to an element in the bibliography, "einstein" is a keyword corresponding to an entry in sample.bib.
Prints the list of cited references, the default title is "References" for the article document class and "Bibliography" for books and reports.

ShareLaTeX provides several templates with pre-defined styles to manage bibliography. See this link

  Open an example of the biblatex package in ShareLaTeX

[edit]Basic usage

Several parameters can be passed to the package import command, as in the following example:

\documentclass{article}\usepackage[utf8]{inputenc}\usepackage[english]{babel}   \usepackage{comment}   \usepackage[ backend=biber, style=alphabetic, sorting=ynt ]{biblatex}\addbibresource{sample.bib}   \title{Bibliography management: \texttt{biblatex} package}\author{Share\LaTeX}\date{}   \begin{document}   \maketitle   Using \texttt{biblatex} you can display bibliography divided into sections, depending of citation type. Let's cite! Einstein's journal paper \cite{einstein} and the Dirac's book \cite{dirac} are physics related items. Next, \textit{The \LaTeX\ Companion} book \cite{latexcompanion}, the Donald Knuth's website \cite{knuthwebsite}, \textit{The Comprehensive Tex Archive Network} (CTAN) \cite{ctan} are \LaTeX\ related items; but the others Donald Knuth's items \cite{knuth-fa,knuth-acp} are dedicated to programming.   \medskip   \printbibliography   \end{document}

Some extra options, inside brackets and comma-separated, are added when importing biblatex:

Sets the backend to sort the bibliography, is the default one and recommended since it provides full localization for several commands and the styles for biber are easier to modify because they use standard LaTeX macros. The other supported backend is , which is a more traditional program; if set as the backend, bibtex will only be used to sort the bibliography, so no bibtex styles can be used here.
Defines the bibliography style and the citation style, in this case . Depending on the style, more citation commands might be available. See biblatex bibliography styles and citation styles for more information.
Determines the criteria to sort the bibliographic sources. In this case they are sorted by year, name and title. See the reference guide for a list of sorting options.

The rest of the commands were explained in the introduction.

  Open an example of the biblatex package in ShareLaTeX

[edit]The bibliography file

The bibliography files must have the standard bibtex syntax

This file contains records in a special format, for instance, the first bibliographic reference is defined by:

This is the first line of a record entry, tells BibTeX that the information stored here is about an article. The information about this entry is enclosed within braces. Besides the entry types shown in the example (, , and ) there are a lot more, see the reference guide.
The label is assigned to this entry, is a unique identifier that can be used to refer this article within the document.
This is the first field in the bibliography entry, indicates that the author of this article is Albert Einstein. Several comma-separated fields can be added using the same syntax , for instance: title, pages, year, URL, etc. See the reference guide for a list of possible fields.

The information in this file can later be printed and referenced within a LaTeX document, as shown in the previous sections, with the command . Not all the information in the .bib file will be displayed, it depends on the bibliography style set in the document.

  Open an example of the biblatex package in ShareLaTeX

[edit]Customizing the bibliography

Biblatex allows high customization of the bibliography section with little effort. It was mentioned that several citation styles and bibliography styles are available, and you can also create new ones. Another customization option is to change the default title of the bibliography section.

\documentclass{article}\usepackage[utf8]{inputenc}\usepackage[english]{babel}   \usepackage{comment}   \usepackage[ backend=biber, style=alphabetic, sorting=ynt ]{biblatex}\addbibresource{sample.bib}   \title{Bibliography management: \texttt{biblatex} package}\author{Share\LaTeX}\date{}   \begin{document}   \maketitle   Using \texttt{biblatex} you can display bibliography divided into sections, depending of citation type. Let's cite! The Einstein's journal paper \cite{einstein} and the Dirac's book \cite{dirac} are physics related items. Next, \textit{The \LaTeX\ Companion} book \cite{latexcompanion}, the Donald Knuth's website \cite{knuthwebsite}, \textit{The Comprehensive Tex Archive Network} (CTAN) \cite{ctan} are \LaTeX\ related items; but the others Donald Knuth's items \cite{knuth-fa,knuth-acp} are dedicated to programming.   \medskip   \printbibliography[title={Whole bibliography}]

The additional parameter passed inside brackets to the command is the one that changes the title.

The bibliography can also be subdivided into sections based on different filters, for instance: print only references from the same author, the same journal or similar title. Below an example.

\printbibliography[type=article,title={Articles only}]\printbibliography[type=book,title={Books only}]   \printbibliography[keyword={physics},title={Physics-related only}]\printbibliography[keyword={latex},title={\LaTeX-related only}]

Here, the bibliography is divided in 4 sections. The syntax of the commands used here is explained below:

Only prints entries whose type is "article", and sets the title "Articles only" for this section. The same syntax works for any other entry type.
Filters bibliography entries that include the word "physics" in any of the fields. Sets the title "Physics-related only" for said section.

  Open an example of the biblatex package in ShareLaTeX

[edit]Adding the bibliography in the table of contents

For the bibliography the be printed in the table of contents an extra option must be passed to

\printbibliography[ heading=bibintoc, title={Whole bibliography} ]   \printbibliography[heading=subbibintoc,type=article,title={Articles only}]

A section and a subsection are added to the table of contents:

  • In the first case, adding adds the title to the table of contents as an unnumbered chapter if possible or as an unnumbered section otherwise.
  • The second case is that adds the title as a second level entry in the table of contents, in this example as a subsection nested in "Whole bibliography".

  Open an example of the biblatex package in ShareLaTeX

[edit]Reference guide

Supported entry types

article book mvbook
inbook bookinbook suppbook
booklet collection mvcollection
incollection suppcollection manual
misc online patent
periodical suppperiodical proceedings
mvproceedings inproceedings reference
mvreference inreference report
set thesis unpublished
custom conference electronic
masterthesis phdthesis techreport

Supported entry fields (The printed information depends on the bibliography style)

abstract addendum afterword annotate
author authortype bookauthor bookpagination
booksubtitle booktitle chapter commentator
date doi edition editor
editortype eid entrysubtype eprint
eprinttype eprintclass eventdate eventtitle
file foreword holder howpublished
indextitle institution introduction isan
isbn ismn isrn issue
issuesubtitle issuetitle iswc journalsubtitle
journaltitle label language library
location mainsubtitle maintitle month
note number organization origdate
origlanguage origlocation origpublisher origtitle
pages pagetotal pagination part
publisher pubstate reprinttitle series
shortauthor shortedition shorthand shorthandintro
shortjournal shortseries shorttitle subtitle
title translator type url
venue version volume year

Bibliography sorting options

option description
sort by name, title, year
sort by name, year, title
sort by name, year, volume, title
sort by alphabetic label, name, year, title
sort by alphabetic label, name, year, volume, title
sort by year (descending), name, title
entries are processed in citation order

For detailed information on these entries and options, see the package documentation.

[edit]Further reading

For more information see

@article{einstein, author = "Albert Einstein", title = "{Zur Elektrodynamik bewegter K{\"o}rper}. ({German}) [{On} the electrodynamics of moving bodies]", journal = "Annalen der Physik", volume = "322", number = "10", pages = "891--921", year = "1905", DOI = "http://dx.doi.org/10.1002/andp.19053221004", keywords = "physics" }   @book{dirac, title = {The Principles of Quantum Mechanics}, author = {Paul Adrien Maurice Dirac}, isbn = {9780198520115}, series = {International series of monographs on physics}, year = {1981}, publisher = {Clarendon Press}, keywords = {physics} }   @online{knuthwebsite, author = "Donald Knuth", title = "Knuth: Computers and Typesetting", url = "http://www-cs-faculty.stanford.edu/~uno/abcde.html", addendum = "(accessed: 01.09.2016)", keywords = "latex,knuth" }   @inbook{knuth-fa, author = "Donald E. Knuth", title = "Fundamental Algorithms", publisher = "Addison-Wesley", year = "1973", chapter = "1.2", keywords = "knuth,programming" } ...

LaTeX supports bibliographies out of the box, either embedding the references in your document or storing them in an external file. This article explains how to manage bibliography with the environment and the BibTeX system.

Note: If you are starting from scratch it's recommended to use biblatex since that package provides localization in several languages, it's actively developed and makes bibliography management easier and more flexible.

[edit]Introduction

Standard bibliography commands in LaTeX have a similar syntax to that of lists and items.

\begin{thebibliography}{9}\bibitem{latexcompanion} Michel Goossens, Frank Mittelbach, and Alexander Samarin. \textit{The \LaTeX\ Companion}. Addison-Wesley, Reading, Massachusetts, 1993.   \bibitem{einstein} Albert Einstein. \textit{Zur Elektrodynamik bewegter K{\"o}rper}. (German) [\textit{On the electrodynamics of moving bodies}]. Annalen der Physik, 322(10):891–921, 1905.   \bibitem{knuthwebsite} Knuth: Computers and Typesetting, \\\texttt{http://www-cs-faculty.stanford.edu/\~{}uno/abcde.html}\end{thebibliography}

The environment produces a list of references; such list will be titled "References" in a article document class, and "Bibliography" in book and report document classes. A parameter inside braces, in the example, indicates the number of entries to be added; this parameter can not be greater than 99.

To create a bibliography entry the command is used. A parameter inside braces is set to label this entry and can later be used as identifier for this reference. After the closing brace the text with the name of the author, the book title, publisher and so on is entered.

ShareLaTeX provides several templates with pre-defined styles to manage bibliography. See this link

  Open an example in ShareLaTeX

[edit]Embedded system

The example presented in the introduction only contains list of references, the next example shows how to cite the entries of that list within the document.

\begin{document}   \section{First section}   This document is an example of \texttt{thebibliography} environment using in bibliography management. Three items are cited: \textit{The \LaTeX\ Companion} book \cite{latexcompanion}, the Einstein journal paper \cite{einstein}, and the Donald Knuth's website \cite{knuthwebsite}. The \LaTeX\ related items are \cite{latexcompanion,knuthwebsite}.   \medskip   \begin{thebibliography}{9}\bibitem{latexcompanion} Michel Goossens, Frank Mittelbach, and Alexander Samarin. \textit{The \LaTeX\ Companion}. Addison-Wesley, Reading, Massachusetts, 1993.   \bibitem{einstein} Albert Einstein. \textit{Zur Elektrodynamik bewegter K{\"o}rper}. (German) [\textit{On the electrodynamics of moving bodies}]. Annalen der Physik, 322(10):891–921, 1905.   \bibitem{knuthwebsite} Knuth: Computers and Typesetting, \\\texttt{http://www-cs-faculty.stanford.edu/\~{}uno/abcde.html}\end{thebibliography}   \end{document}

The command insert the number corresponding to the bibliography entry whose label is passed inside braces. For example, the output of is [2].

The information printed by the command depends on the bibliography style used. See Bibtex bibliography styles.

  Open an example in ShareLaTeX

[edit]Bibliography management with Bibtex

BibTeX is a widely used bibliography management tool in LaTeX, with BibTeX the bibliography entries are kept in a separate file and then imported into the main document.

Once the external bibliography file is imported, the command is used just as in the introductory example.

Ths document is an example of BibTeX using in bibliography management. Three items are cited: \textit{The \LaTeX\ Companion} book \cite{latexcompanion}, the Einstein journal paper \cite{einstein}, and the Donald Knuth's website \cite{knuthwebsite}. The \LaTeX\ related items are \cite{latexcompanion,knuthwebsite}.   \medskip   \bibliographystyle{unsrt}\bibliography{sample}

This uses the following commands:

Imports the BibTeX file "sample.bib" to display the bibliography. To import several .bib files just write them comma-separated inside the braces, the file extension is not necessary.
Sets the bibliography style to be used in this document. The information displayed depends on the bibliography style used, even if the entry contains information about the date, author, title, publisher, and abstract, the style used might only print the title and the author. See Bibtex bibliography styles which contains examples of the default bibliography styles in LaTeX.
This will print a number of text, depending on the bibliography style, to reference the bibliography entry whose label is passed to the command. In this case, the label produces [2].

When the main document is compiled, a .bbl file is generated from the .bib file. This is simply a .tex file reorganising the information in the .bib file in a environment, as above. On ShareLaTeX the .bbl file is stored in the cache, and you can download it from the list of other logs and files.

Note: Unicode characters are not supported on BibTeX. Also, if there are too many bibliography entries (+100) it may not work properly. See the further reading section for links to other bibliography management tools.

  Open an example of the bibtex package in ShareLaTeX

[edit]The bibliography file

Bibliographic references are usually kept in a bibliography file whose extension is .bib, this file consists of a list of records and fields. Each bibliography record holds relevant information for a single entry.

This file contains records in a special format, for instance, the first bibliographic reference is defined by:

This is the first line of a record entry, denotes the entry type and tells BibTeX that the information stored here is about an article. Besides the entry types shown in the example (, and ) there are a lot more, see the reference guide.
The label is assigned to this entry, is an identifier that can be used to refer this article within the document.
This is the first field in the bibliography entry, indicates that the author of this article is Albert Einstein. Several comma-separated fields can be added using the same syntax , for instance: title, pages, year, URL, etc. See the reference guide for a list of possible fields.

The information in this file can later be used within a LaTeX document to include these references, as shown in the next subsection.

  Open an example of the bibtex package in ShareLaTeX

[edit]Adding the bibliography in the table of contents

There are two ways of including the bibliography in the table of contents, either manually adding it or using the package tocbibind (recommended).

To add it manually just insert the next line right before the command or


for books and reports or


for articles. If you prefer to use tocbibind see the next example.

\documentclass[a4paper,10pt]{article}\usepackage[utf8]{inputenc}\usepackage[english]{babel}   \usepackage[nottoc]{tocbibind}   \begin{document}   \tableofcontents   \section{First Section} This document ...   \bibliographystyle{unsrt}\bibliography{sample}   \end{document}

Adding the line


to the preamble will print the "References" or "Bibliography" in the table of contents, depending on the document type. Be careful, it will also add other elements like the Index, Glossary and list of Listings to the table of contents. For more information see [the tocbibind package documentation].

  Open an example of the bibtex package in ShareLaTeX

[edit]Reference guide

Standard entry types

Article from a magazine or journal
A published book
A work that is printed but have no publisher or sponsoring institution
An article in a conference proceedings
A part of a book (section, chapter and so on)
A part of a book having its own title
An article in a conference proceedings
Technical documentation
A Master's thesis
Something that doesn't fit in any other type
A PhD thesis
The same as
Report published by an institution
Document not formally published, with author and title


Most common fields used in BibTeX

address annote author
booktitle chapter crossref
edition editor institution
journal key month
note number organization
pages publisher school
series title type
volume year URL
ISBN ISSN LCCN
abstract keywords price
copyright language contents

[edit]Further reading

For more information see:

@article{einstein, author = "Albert Einstein", title = "{Zur Elektrodynamik bewegter K{\"o}rper}. ({German}) [{On} the electrodynamics of moving bodies]", journal = "Annalen der Physik", volume = "322", number = "10", pages = "891--921", year = "1905", DOI = "http://dx.doi.org/10.1002/andp.19053221004" }   @book{latexcompanion, author = "Michel Goossens and Frank Mittelbach and Alexander Samarin", title = "The \LaTeX\ Companion", year = "1993", publisher = "Addison-Wesley", address = "Reading, Massachusetts" }   @misc{knuthwebsite, author = "Donald Knuth", title = "Knuth: Computers and Typesetting", url = "http://www-cs-faculty.stanford.edu/\~{}uno/abcde.html" }
\addcontentsline{toc}{chapter}{Bibliography}
\addcontentsline{toc}{section}{References}
\usepackage[nottoc]{tocbibind}

0 thoughts on “Bibliography Latex Package”

    -->

Leave a Comment

Your email address will not be published. Required fields are marked *