1 Fenrilkis

Bibliography Style Plain Abbrviation

LaTeX tips: Bibliographies

The top ten list

A list of the most useful tips and the most common sources of errors.

Stylistic conventions for bibliographies in mathematical writing

While there is some degree of variation in the styles in which different journals set their bibliographies, there are a number generally accepted stylistic conventions for bibliographies in research level mathematical writing that authors should try to follow.
  • All items listed in the bibliography should be cited in the body of the paper. There should be no "gratuitious" references. If you want a particular item to be listed in the bibliography, work in a citation using phrases like "See also ...", or "for related work on this topic see ...".
  • Bibliography items should be ordered alphabetically, by author. Multiple references by the same author (or the same set of authors) should be ordered chronologically.
  • Use standard journal abbreviations. For example, "J. Number Theory" is the correct abbreviation for the Journal of Number Theory; do not use "J. of Number Theory", "J. Number Th.", or "JNT". The authoritative source for journal abbreviations is MathSciNet; to find an abbreviation, either look up the paper in MathSciNet, or (in case the paper is not in the MathSciNet database), use the "Search the Journals Database" option of MathSciNet. Be aware that authors do not always use correct abbreviations, so journal abbreviations you might see in other articles are not necessarily the "correct" abbreviations.
  • Be consistent. Whatever format and style you choose, make sure that the same style/format is used for all bibliography entries. Inconsistencies in the bibliography are distracting and create a bad impression on the reader/referee of the paper. For example, first names of authors may be abbreviated or spelled out (most people prefer the former), but whatever choice is made, it should be applied consistently to all references.
  • Use proper punctuation and spacing in references. If you set references manually with , be sure to punctuate references and insert spaces where appropriate.
  • Style of reference labels. In most styles reference labels are placed inside brackets. The brackets are generated by the commands or by bibtex, so they should not be specified explicitly. The most common labelling schemes are numerical (e.g., [1], [2], ..., the default in latex), and alphanumerical (e.g., [GKP92], [Kn97a], [Kn97b], ...). In the latter scheme the labels are constructed from the initials of the authors (typically, the first two letters of the author's last name in case of a single author item, and the first letter of the last name of each author in case of multiple-author items), and the year of publication (usually the last two digits, followed by a,b, etc., in case there are multiple entries by the same author in the same year).
  • Citing unpublished papers. Papers that have not yet been published do not come equipped with "official" bibliographical information, so there is some leeway in listing these papers. Depending on the nature of the work, different ways to list such papers are called for:
    • Papers that have been accepted for publication, but have not yet appeared. In this case, provide the name of the journal (using standard abbreviations), followed by "to appear".
    • Papers that have been submitted for publication, but have not yet been accepted. In this case, simply say "submitted", or "preprint", optionally followed by a URL if the paper is available online. There is no need to mention the journal; by not naming the journal, you can save yourself some embarrassment in case the paper ends up getting rejected.
    • Papers that exist as manuscripts, but have not (yet) been submitted. Use "preprint"; if you have posted the paper on your website or on a preprint server, provide a URL.
    • Papers that are "in preparation". This is a grey category and is probably best avoided. A paper listed as being "in preparation" can mean a number of things - from an idea in one's head to a rough, but complete draft. It's best to err on the conservative side and only cite items that have been written up and which physically exist.
  • Formatting of bibliography entries. If bibtex is used to generate bibliographies, the issue does not arise since the formatting of the bibliography entries is determined by the bibliography style. However, when formatting bibliographies manually with , the following standard conventions should be followed.
    • Author(s), title, and journal name. The two most common ways to format these three items are: (i) italics for the title of the paper, and ordinary (Roman) font for the author(s) and the name of the journal; (ii) italics for the name of the journal, and ordinary font for author(s) and title. The examples below illustrate the first style, which is the style used by the AMS journals.
    • Volume, issue, year, and page numbers. In contrast to popular magazines, which begin each issue with page number 1, scholarly journals are grouped into volumes, consisting of two or more issues each, and are paginated consecutively within each volume.. Thus, an article is (usually) uniquely identified by specifying the volume number (e.g., volume 99) and the page range (e.g., pages 403-422). The particular issue within a given volume need not be specified, and usually (though not always) is left out. Typically, a journal "volume" is of a size that is suitable for binding as a single volume. A journal may issue one or more volumes per year. The year of publication (though redundant) is usually indicated in parenthesis after the volume number, which is set in boldface. A typical volume/year/page number listing is as follows: "99 (1992), 403-422."
    • Book references. In addition to author and title, book references require the following items: publisher, location, and year of publication. These are normally set in ordinary font, in the order given here.
    • References to articles in proceedings or collections. These items are among the most complex bibliography items since, in addition to the author and title of the article itself, the reference typically includes the title and author/editor of the book in which the article appeared; the publisher; the year and place of publication; and, in case of a conference proceedings, the location and date of the conference. It is best to rely on MathSciNet for the correct listing of such an item. The most noticeable difference to the formatting of ordinary journal references is that the page number range for the article cited is given at the very end of the reference and preceded by the abbreviation "pp." For an example see the citation of the Erdos paper below.

Formatting bibliographies with \bibitem

Manual formatting of bibliographies is accomplished with the environment, using to set an individual reference. The command is a variation of the command, and its syntax is similar. Here is an example illustrating the formatting of four different types of bibliography entries: an ordinary journal article (Knuth), a book (Graham/Knuth/Patashnik), an article published in a conference proceedings (Erdos), and an unpublished paper (Simpson): Some points to note:
  • Citation keys. The arguments to ("Erdos01", "ConcreteMath", "Knuth92", "Simpson") in the above example) represent the citation keys (i.e., the keys used inside the commands to match up citations with bibliography items), not the labels that get printed in the bibliography. By default, the bibliography items are given consecutive numeric labels, set in square brackets. In the above example, the four bibliography items will be labeled [1], [2], [3], [4].
  • Explicit labels. Many people prefer "mnemonic" labels that contain the year of publication and the initials of the author(s); for instance, in the above example, one might label the items [Er01], [GKP89], [Kn92], and [Si03]. To generate such explicit labels, add the desired labels as optional arguments (set in brackets) to : It is important to distinguish between these explicit labels, set in brackets, and the citation keys, set in braces. The citation keys serve as internal labels that are used to match up citations with references, but which have no bearing on the output. The explicit labels generate the printed labels, but are not used internally. It may be convenient to choose the same string for both types of labels, as in .
  • Width of labels. The command requires a second argument ( in the above example) that represents (approximately) the width of the widest label and which determines the amount of indentation used. This second argument is mandatory; if it is missing, an error message is generated. It doesn't matter what you put inside the braces as long as the width of the string inside the braces represents approximately the widest label (without the brackets). As a practical matter, if the default (numerical) labeling system is used, use the string "9" if only single digit numbers occur, "99" if the largest reference number has two digits, and so on. If explicit labels are used, use the longest label as string; for instance, in the above example, [GKP89] is the widest label, so an appropriate string would be "GPK89".
  • Typesetting URL references. Trying to typeset URL references manually is tricky, since URL's tend to be lengthy "words" that are likely to cause overfull lines. Moreover, URL's of personal webpages usually contain the tilde symbol (~), which without special coding gets interpreted as a blank space, and therefore needs to be escaped by a backslash (\~) or replaced by the math "twiddle" symbol $\sim$. Fortunately, there is a package, "url", that provides a painless way to typeset URL's. To use this package available, add \usepackage{url} near the beginning of the document, and enclose any web and email addresses in the document in "\url{...}": \url{http://www.math.drofnats.edu/~gauss} \url{gauss@math.drofnats.edu} The \url{...} command does all the work: It sets the enclosed expression in the appropriate typewriter style font, it takes care of any necessary linebreaking, and it chooses break points intelligently (e.g., between components of an address), and it ensures that special symbols such as the tilde symbol or the "at" symbol get typeset correctly.

Generating bibliographies with bibtex

The basic philosophy underlying LaTeX is that of separating "logical formatting" from "visual formatting". Authors should only be concerned with the former and not have to worry about the latter. LaTeX makes this possible by allowing authors to specify document elements with logical constructs such as etc., while the appearance of these items in the typeset document is determined by the document class.

Bibtex is a program that applies the same philosophy to bibliographies. In bibtex, bibliography entries are specified by providing values for fields such as author, title, volume, etc., without regard to the formatting of these items. The formatting is determined by a bibliography style, which plays the same role as the document class in LaTeX.

To set a bibliography using bibtex requires the following steps, which will be explained in detail below.

  1. Create a "bibtex database".
  2. Choose a bibliography style and insert an instruction in the tex file of the paper to load the bibtex database and format references according to this style file.
  3. Process the paper through multiple runs of latex and bibtex.
Here are the steps in detail:

Step 1. Creating a bibtex database

Like any database, a bibtex database consists of records and fields. Each bibtex record holds the bibliographic information for a single bibliography entry. Records begin with an "at" symbol (@), followed by the record type, and, in braces, a comma-separated list of entries of the form "fieldname = value", where the "fieldnames" are components of the bibliography entry such as "author", "title", etc. The following example shows how the four bibliography items listed above would be entered into a bibtex database: The four entries illustrate the most common entry types: Depending on the bibliography style used, other types may be available, but in most cases the four types suffice. For a complete listing of possible record types, see Chapter 10 in Gratzer's book.

Here are some points to note:

  • The order of the records in the database does not matter. This is because (at least under the standard bibliography styles), bibtex sorts the entries in the database alphabetically by author.
  • The order of the fields in the database does not matter. The bibliography style determines the order in which the various components of a bibliography entry are typeset. Thus, if a field is missing in a particular record, it can simply be added at the end of the record.
  • Field names and record types are case insensitive. Thus, is equivalent to .
  • Field values must be enclosed in double quotes. Alternatively, one can use a pair of braces, though it is better to use quotes since braces are used in several different contexts (see below).
  • Field entries must be separated by commas. A missing comma at the end of a field entry is probably the most common mistake made when formatting bibtex records. The bibtex program checks for such errors and issues an error message if it detects a problem. (Note that it is not necessary to put each field entry on a separate line and indent that line as was done in the above example; however, such (or similar) formatting is recommended since it makes it easier to edit the database at a later point.)
  • Formatting of multi-author items. As in the above example, multiple authors should be separated by the word "and". It is important to note that the conjunction "and" here serves only as a separator for internal use by the bibtex program and has no bearing on the output generated. The exact form in which multiple authors are listed is determined by the bibliography style (see below). In the Graham/Knuth/Patashnik example most styles would place a comma between the first two authors and a comma followed by "and" between the second and third author.
  • Formatting of author entries. While bibtex accepts, and can properly parse, different formats such as "Donald E. Knuth" and "Knuth, Donald E.", it is best to pick a single format (I'd recommend the former) and use that consistently. The particular format in which an author's name is listed in the bibtex database has no bearing on the output generated, as the formatting of authors is determined by the bibliography style used.
  • Formatting of non-standard or unusual author names. Author names that contain accents (such as "Paul Erd\H os"), or which are not of the standard "first middle last" format, need to be formatted in a special way so that bibtex can properly alphabetize the entries by last name. Accented characters should be enclosed in braces, as in "Paul Erd{\H o}s". In names that do not follow the standard "first middle last" pattern, the complete last name should be enclosed in parentheses: For example, use "John {Doe III}" and "Jose {Dos Santos}" to ensure that these entries get alphabetized under "D" rather than "I" or "S".
  • Formatting of titles. One of the most important things to understand about bibtex is that the capitalization of titles is determined by the bibliography style, and not by the form in which the title is given in the "title" field. Some styles use lower case titles for all bibliography entries, while others capitalize book titles, but set titles of journal articles in lower case. To allow these variations, bibtex ignores capitalization in the title field. For example, a title "Concrete Mathematics" will be set as "Concrete mathematics" if the bibliography style calls for lower case titles. If a title includes words that should not be converted to lower case, those words need to be "protected" by enclosing the first (upper case) letter in braces. This is illustrated by the first example above: To prevent the words "Riemann Hypothesis" from being set in lower case, enclose the letters R and H in braces: "{R}iemann {H}ypothesis".
  • Formatting of "unpublished" items. Records listed as "unpublished" require a "note" field that can be used to indicate the nature of the record (e.g., "preprint"), and to provide additional information, such as a URL.
  • Formatting of articles in collections or proceedings. There are two very similar record types for this purpose: "incollection", and "inproceedings". The above example illustrates the use of "incollection", which is appropriate for most situations. The difference between an "incollection" record and an ordinary "article" record type is that the former requires, in addition to the title and author of the article, and the page numbers, information on the book itself: booktitle, publisher, address and year of publication.
Downloading bibtex records from MathSciNet. Perhaps the greatest advantage of using bibtex for bibliographies is that (at least for published papers) bibtex records can be downloaded from MathSciNet. This saves the time and effort to manually create these records, and, perhaps more importantly, virtually guarantees the accuracy of the records.

MathSciNet has a handy "clipboard" feature that greatly facilitates this task. For each of the bibliography entries, perform a regular MathSciNet search to locate the entry, click on "Add citation to clipboard", and move on to the next item in the bibliography. When you are done, click on the link "View clipboard" (near at the top left of the page), select "bibtex" as format, and "Save all". This will display bibtex versions of all records that have been saved to the clipboard. Now, save the page as a text file to be used as a bibtex database, or paste the records into an existing bibtex database file. (In netscape, use the "Save as" option from the File menu and select "text" as file format.) The final step consists in "matching up" the keys of the bibtex records with the citation keys of the paper. MathSciNet uses MR numbers (strings such as MR1999i:11139) for keys. Replace these MR numbers by the appropriate citation keys of the paper.

MathSciNet contains records of nearly all mathematical literature published during the past 50 years, but records for older references and unpublished items will still have to be created manually. Thus, even if MathSciNet is used to obtain bibtex records, a basic understanding of syntax of bibtex databases is necessary in order to create records that are not in MathSciNet.

Step 2. Loading the bibtex database

Once a bibtex database, say , has been created, it can be loaded by placing the following two commands at the end of the main tex file of the paper, just before . The entry determines the formatting of bibliographies. There are four commonly used bibliography styles, , , , . The latter two may be preferable since those are the styles used by AMS publications. The "plain" versions of these styles generate numeric labels, the "alpha" versions generate alphanumeric labels constructed from the authors' initials and the year of publication.

Many publishers have in-house style files and ask authors of accepted papers to prepare final versions using those style files. This requires downloading and installing the publisher's style file; see the page "Installing and using custom packages and styles" for instructions on how to do this.

The entry tells LaTeX the name of the bibtex database containing the bibliographic information. The argument in braces should be the name of the bibtex file, but without the extension. The above example assumes there is a file in the current directory. Note that this file can contain many more records than are needed for the particular paper. This allows one to keep all records in a single personal bibtex database; it also makes it possible to share bibtex databases, and to compile large databases of bibtex records in a particular field and make those available for anyone to use.

Step 3. Processing the paper through latex and bibtex

Assume you have a paper, called , along with a bibtex database, , which has been loaded in the paper as shown above. To completely process the paper execute the following commands, in sequence:
  1. latex paper
  2. bibtex paper
  3. latex paper
  4. latex paper
The first run (through latex) generates an auxiliary file, , containing information about citations (and other types of references), the bibliography style used, and the name of the bibtex database. The second run (through bibtex) uses the information in the auxiliary file, along with the data contained in the bibtex database, to create a file . This file contains a environment with entries formatted according to the bibliography style specified.

In principle, the file could be pasted into the main tex file (), replacing the lines . The resulting tex file would then be of the same form as a LaTeX file with a manually formatted bibliography. However, this is not necessary unless one wants to create a single self-contained file (e.g., because a publisher requested so).

The final two runs by latex process the paper again through latex, now using the file for the bibliography.

In situations with complex cross-referencing, it may be necessary to do more than two latex runs. If additional runs are necessary, LaTeX will issue an appropriate warning.

Back to the LaTeX Tips Page

Last modified: Mon 17 Sep 2007 12:42:07 PM CDT A.J. Hildebrand

Choosing a bibliography style

A large proportion of people are satisfied with one of Patashnik’s original “standard” styles, plain, unsrt, abbrv and alpha. However, no style in that set supports the “author-date” citation style that is popular in many fields; but there are a very large number of contributed styles available, that do support the format.

(Note that author-date styles arose because the simple and clear citation style that plain produces is so awkward in a traditional manuscript preparation scenario. However, TeX-based document production does away with all those difficulties, leaving us free once again to use the simple option.)

Fortunately, help is at hand, on the Web, with this problem:

  • a sample text, showing the sorts of style choices available, can be found on Ken Turner’s web site;
  • an excellent survey, that lists a huge variety of styles, sorted into their nominal topics as well as providing a good range of examples, is the Reed College “Choosing a BibTeX style”.

Of course, these pages don’t cover everything; the problem the inquisitive user faces, in fact, is to find what the various available styles actually do. This is best achieved (if the links above don’t help) by using xampl.bib from the BibTeX documentation distribution: one can get a pretty good feel for any style one has to hand using this “standard” bibliography. For style my-style.bst, the simple LaTeX document:

\documentclass{article} \begin{document} \bibliographystyle{my-style} \nocite{*} \bibliography{xampl} \end{document}
will produce a representative sample of the citations the style will produce. (Because xampl.bib is so extreme in some of its “examples”, the BibTeX run will also give you an interesting selection of BibTeX’s error messages…)

This question on the Web: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=whatbst

Leave a Comment


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