BibTeX

とは参考文献の一覧の整形に使われるツールである。
概要.
 はオーレン・パタシュニク (Oren Patashnik) とレスリー・ランポート (Leslie Lamport) が1985年に開発した。 では文献書誌情報とその情報の表記方法とを分離して記述できるため、文献の参照形式を一貫した形式で書くことが可能である。コンテンツと表記・スタイルの分離という同様の方式は、 や XHTML、HTML と CSS といったマークアップ言語にも見てとることができる。
なお、 を基にして日本語処理に対応させたものが である。そのため、日本語文字を含む ファイルを処理する場合には、 ではなく を使用する必要がある。
書誌情報ファイル.
 は参考文献の一覧用に、出力形式とは独立したテキストベースのファイル形式を用いる。各書誌情報は論文・書籍・学位論文といった書誌項目の種別を持つ。 書誌情報ファイルは通常 「」 の拡張子を持つ。
書誌情報には以下のような標準的なデータ項目がある。
さらに各書誌項目には、その書誌を引用参照もしくは相互参照する際に用いられるキーが付与される。このキーは各書誌項目の先頭で与えられ、データ項目の一部とはならない。
エントリ種別.
書誌情報ファイルに含まれる各エントリは、いくつかの種類に分けられる。以下の種類は全て スタイルが解釈する。
書誌スタイルファイル.
 文書中では codice_153
コマンドにより書誌スタイルを指定する必要がある。一般的な指定値として、「codice_154」や 「codice_155」 といった指定がある。
 の書誌スタイルファイルは 「」という拡張子を持ち、書誌項目をどのように整形するかを記述するのに、単純なスタックベースのプログラミング言語を用いる。 プログラム codice_156 はこのスタイルファイルに従って書誌事項を整形し、 または の整形コマンドに変換する。なお、HTML を出力するようなスタイルファイルも存在する。固有の スタイルファイルは codice_157 コマンドにより生成することができる。
コマンドの動作.
参考文献一覧の情報を出力するには ツールを動作させる必要がある。
参照情報を加えるもしくは削除するたびに、上記手順を繰り返す。
例.
ファイルに以下のような数学ハンドブックのエントリが含まれているとする。
 @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"
本文中でこのハンドブックを参照する場合に、書誌情報は参照スタイル（APA、MLA、Chicago など）に応じて様々な形式で表記される。 は codice_159 コマンドおよび書誌参照スタイルの指定に従って、これを扱う。 文書中に codice_160 というコマンドが現れた場合に、codice_156 プログラムはこれを参考文献リストに追加し、 の整形用コードを出力する。 文書を組版した結果としては、以下のような見栄えになることが多い。
スタイルファイルに応じて は著者名の姓名の順を入れ替えたり、タイトルの大文字・小文字を変えたり、 ファイルにある情報のうちいくつかの項目については省略したり、テキストの一部を斜体に変更したり、約物を加えたりなどの整形を行う。参考文献一覧の情報全体を同一のスタイルファイルで整形することによって、最小限の労力で全体の出力の一貫性を保ち、一定の整形結果を得ることができる。
著者名の整形.
「von」、「van」、「der」のような姓に付与される接頭辞は自動的に処理され、ミドルネームと区別するために小文字で整形される。複数語からなる姓を名・ミドルネームと区別する場合には、姓を先に書き、カンマを間に加えてから、名・ミドルネームを書く。「Jr.」、「Sr.」や 「III」などの、名に付与される接尾辞は通常2つのカンマを間に加えることで自動的に処理できる。
 @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"
姓接頭辞を認識させるのにカンマを使わない場合、代わりに波括弧を用いる書き方（「codice_162」）もある。
相互参照.
 では codice_163 フィールドを用いて、他の書誌情報を参照することができる。以下の例では、文献「codice_164」 から文献 「codice_165」を参照している。
 @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},
 booktitle = {Proceedings of the Xth Conference on XYZ},
 year = {2006},
 month = {October},
上記入力を にかけると、以下のような出力が得られる。
用途別スタイルファイル.
学術雑誌毎に多くの異なるスタイルファイルがいわば「お手製」で作られてきた。引用スタイルをカスタマイズする必要がある場合は、codice_166 や codice_167 といった 
マクロパッケージを使うか、codice_168 といったツールを使える。
フリーソフトウェア.
大半の参考文献管理ソフトウェアが 形式の入出力に対応している。以下のパッケージは を内部形式として用いている。