BibTeX
From Wikipedia, the free encyclopedia
BibTeX is a tool for formatting lists of references. The BibTeX tool is typically used together with the LaTeX document preparation system. Within the typesetting system, its name is styled as
.
BibTeX was created by Oren Patashnik and Leslie Lamport in 1985. BibTeX makes it easy to cite sources in a consistent manner, by separating bibliographic information from the presentation of this information. This same principle of separation of content and presentation/style is used by LaTeX itself.
Contents
[edit] Bibliographic information file
BibTeX uses a style-independent text-based file format for lists of bibliography items, such as articles, books, theses. BibTeX bibliography files usually end in .bib.
Bibliography entries each contain some subset of standard data entries:
In addition, each entry contains a key that is used to cite or cross-reference the entry. This key is the first item in a BibTeX entry, and is not part of any field.
[edit] Entry Types
Bibliography entries included in a .bib are split by types. The following types are understood by virtually all BibTeX styles:
- article
- An article from a journal or magazine.
Required fields: author, title, journal, year
Optional fields: volume, number, pages, month, note, key - book
- A book with an explicit publisher.
Required fields: author/editor, title, publisher, year
Optional fields: volume, series, address, edition, month, note, key, pages - booklet
- A work that is printed and bound, but without a named publisher or sponsoring institution.
Required fields: title
Optional fields: author, howpublished, address, month, year, note, key - conference
- The same as inproceedings, included for Scribe compatibility.
Required fields: author, title, booktitle, year
Optional fields: editor, pages, organization, publisher, address, month, note, key - inbook
- A part of a book, usually untitled. May be a chapter (or section or whatever) and/or a range of pages.
Required fields: author/editor, title, chapter/pages, publisher, year
Optional fields: volume, series, address, edition, month, note, key - incollection
- A part of a book having its own title.
Required fields: author, title, booktitle, year
Optional fields: editor, pages, organization, publisher, address, month, note, key - inproceedings
- An article in a conference proceedings.
Required fields: author, title, booktitle, year
Optional fields: editor, pages, organization, publisher, address, month, note, key - manual
- Technical documentation.
Required fields: title
Optional fields: author, organization, address, edition, month, year, note, key - mastersthesis
- A Master's thesis.
Required fields: author, title, school, year
Optional fields: address, month, note, key - misc
- For use when nothing else fits.
Required fields: none
Optional fields: author, title, howpublished, month, year, note, key - phdthesis
- A Ph.D. thesis.
Required fields: author, title, school, year
Optional fields: address, month, note, key - proceedings
- The proceedings of a conference.
Required fields: title, year
Optional fields: editor, publisher, organization, address, month, note, key - techreport
- A report published by a school or other institution, usually numbered within a series.
Required fields: author, title, institution, year
Optional fields: type, number, address, month, note, key - unpublished
- A document having an author and title, but not formally published.
Required fields: author, title, note
Optional fields: month, year, key
[edit] Style files
BibTeX formats bibliographic items according to a style file, typically by generating TeX or LaTeX formatting commands. However, style files for generating HTML output also exist. BibTeX style files, for which the suffix .bst is common, are written in a simple, stack-based programming language that describes how bibliography items should be formatted. There are some packages which can generate .bst files automatically (like custom-bib or Bib-it).
Most journals or publishers that support LaTeX often have a customized bibliographic style file for the convenience of the authors. This ensures that the bibliographic style meets the guidelines of the publisher with minimal effort.
[edit] Examples
A .bib file might contain the following entry, which describes a mathematical handbook:
@Book{abramowitz+stegun,
author = "Milton Abramowitz and Irene A. Stegun",
title = "Handbook of Mathematical Functions with
Formulas, Graphs, and Mathematical Tables",
publisher = "Dover",
year = 1964,
address = "New York",
edition = "ninth Dover printing, tenth GPO printing"
}
If a document references this handbook, the bibliographic information may be formatted in different ways depending on which citation style (APA, MLA, Chicago etc.) is employed. The way LaTeX deals with this is by specifying \cite commands and the desired bibliography style in the LaTeX document. If the command \cite{abramowitz+stegun} appears inside a LaTeX document, the bibtex program will include this book in the list of references for the document and generate appropriate LaTeX formatting code. When viewing the formatted LaTeX document, the result might look like this:
- Abramowitz, Milton and Irene A. Stegun (1964), Handbook of mathematical functions with formulas, graphs, and mathematical tables. New York: Dover.
Depending on the style file, BibTeX may rearrange authors' last names, change the case of titles, omit fields present in the .bib file, format text in italics, add punctuation, etc. Since the same style file is used for an entire list of references, these are all formatted consistently with minimal effort required from authors or editors.
[edit] Author formatting
Last name prefixes such as von, van and der are handled automatically, provided they are in lower case to distinguish them from middle names. Multiple word last names are distinguished from first and middle names by placing the last names first, then a comma, then the first and middle names. Name suffixes such as Jr., Sr., and III are generally handled by using two comma separators as in the following example:
@Book{hicks2001,
author = "von Hicks, III, Michael",
title = "Design of a Carbon Fiber Composite Grid Structure for the GLAST
Spacecraft Using a Novel Manufacturing Technique",
publisher = "Stanford Press",
year = 2001,
address = "Palo Alto",
edition = "1st,",
isbn = "0-69-697269-4"
}
If the author does not use a comma to separate the name suffix from the last name, then curly brackets {Hicks III} may be used instead.
[edit] Cross-referencing
BibTeX allows referring to other publications via the crossref field. In the following example the 'author:06' publication references to 'conference:06'.
@INPROCEEDINGS {author:06,
title = {Some publication title},
author = {First Author and Second Author},
crossref = {conference:06},
pages = {330--331},
}
@PROCEEDINGS {conference:06,
editor = {First Editor and Second Editor},
title = {Proceedings of the Xth Conference on XYZ},
booktitle = {Proceeding of the Xth Conference on XYZ},
year = {2006},
month = {October},
}
Remember to add booktitle to the proceedings entry in order to avoid 'empty booktitle' BibTex warning. The LaTeX output of this input might look like:
- Author, First and Author, Second (October 2006), Some publication title, in: Proceedings of the Xth Conference on XYZ, pp 330-331.
[edit] See also
[edit] Free BibTeX-related software
Most reference management software‎ can handle BibTeX import and export. These packages use BibTeX as the primary language.
bibget a=gilkey t=invariance book 1984 or bibget r=MR783634 >> books.bib. Shell script for sh or bash. (GPL) bib-it - [4] A BibTeX manager. Can also generate style files. bibstuff - [5] — a Python package for interacting with BibTeX style databases of citation references. Contains classes for parsing and storing BibTeX files, utilities for searching and labeling BibTeX entries, a utility for replacing in-text citations and creating bibliographies (e.g., in a reStructuredText document), and a module for defining citation styles. (MIT) bibutils - [6] Converts between various bibliography formats (including BibTeX) using the XML-based Library of Congress's Metadata Object Description Schema (MODS) as an intermediate. Available in many platforms. (GPL) Bibwiki - [7] — An extension to Mediawiki to manage BibTeX bibliographies. Import from Aleph and Amazon and generate lists of reference with BibTeX styles. Jabref — A free Java front end for managing references in the BibTeX format including PubMed and CiteSeer search interface (GPL) RefTeX — A reference management software package designed for use with Emacs and BibTeX. It can cooperate with the popular AUCTeX package. GPLed. Rtfbtx [8] — A collection of BibTeX style files that create Microsoft Word-compatible RTF output instead of LaTeX output. Pre-LaTeX Project Public License. Bibtex4Word [9] — Microsoft Word macros allowing the citation of references from a BibTex database using a chosen formatting style. KBibTeX [10] A KDE application for managing references in the BibTeX format. Features web queries (e. g. Google or PubMed) and exporting to RTF and XML/HTML. (GPL) Referencer [11] A GNOME application for managing references in the BibTex format. Features automatic metadata retrieval (DOI, Arxiv ID), a PDF preview view and tagging.(GPL) BibTex2Word2007 [12] A simple AWK-based script that converts BibTex bibliography format into Microsoft Word 2007 format.(GPL) pybliographic [13] Graphical interface (based on Gnome) including hierarchical search mechanism, direct insertion of references into LyX and Kile, direct queries on Medline, and more. (GPL) cb2bib[14] The cb2Bib is a tool for rapidly extracting unformatted, or unstandardized bibliographic references from email alerts, journal Web pages, and PDF files. (GPL)

