blob: c5730f71fcbd2942a32399bfb6252eb6179456f2 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2002-1 (1.68)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<head>
<TITLE>btxdoc</TITLE>
<META NAME="description" CONTENT="btxdoc">
<META NAME="keywords" CONTENT="btxdoc">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="btxdoc.css">
</head>
<body >
<!--Navigation Panel-->
<IMG WIDTH="81" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next_inactive"
SRC="file:/usr/lib/latex2html/icons/nx_grp_g.png">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/lib/latex2html/icons/up_g.png">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/lib/latex2html/icons/prev_g.png">
<BR>
<BR><BR>
<!--End of Navigation Panel-->
<P>
<H1><A NAME="SECTION00010000000000000000">
1 Overview</A>
</H1>
<P>
[This document will be expanded when
<P>
version 1.00 comes out. Please report typos, omissions, inaccuracies,
and especially unclear explanations to me (<TT>patashnik@SCORE.STANFORD.EDU</TT>).
Suggestions for improvements are wanted and welcome.]
<P>
This documentation, for
<P>
version 0.99b, is meant for general
<P>
users; bibliography-style designers should read this document and
then read ``Designing
<P>
Styles''&nbsp;[<A
HREF="btxdoc.html#btxhak">3</A>], which is meant for just them.
<P>
This document has three parts: Section&nbsp;<A HREF="btxdoc.html#differences">2</A> describes
the differences between versions 0.98i and 0.99b of
<P>
and between the corresponding versions of the standard styles; Section&nbsp;<A HREF="btxdoc.html#latex-appendix">3</A>
updates Appendix&nbsp;B.2 of the L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X book&nbsp;[<A
HREF="btxdoc.html#latex">2</A>]; and Section&nbsp;<A HREF="btxdoc.html#odds-and-ends">4</A>
gives some general and specific tips that aren't documented elsewhere.
It's assumed throughout that you're familiar with the relevant sections
of the L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X book.
<P>
This documentation also serves as sample input to help
<P>
implementors get it running. For most documents, this one included,
you produce the reference list by: running L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X on the document
(to produce the <TT>aux</TT> file(s)), then running
<P>
(to produce the <TT>bbl</TT> file), then L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X twice more (first
to find the information in the <TT>bbl</TT> file and then to get the
forward references correct). In very rare circumstances you may need
an extra /L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X run.
<P>
<P>
version 0.99b should be used with L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X version 2.09, for which
the closed bibliography format is the default; to get the open format,
use the optional document style <TT>openbib</TT> (in an open format
there's a line break between major blocks of a reference-list entry;
in a closed format the blocks run together).]
<P>
Note:
<P>
0.99b is not compatible with the old style files; nor is
<P>
0.98i compatible with the new ones (the new , however, is
compatible with old database files).
<P>
Note for implementors:
<P>
provides logical-area names <TT>TEXINPUTS:</TT> for bibliography-style
files and <TT>TEXBIB:</TT> for database files it can't otherwise
find.
<P>
<H1><A NAME="SECTION00020000000000000000">
2 Changes</A>
</H1>
<P>
<A NAME="differences"></A>
<P>
This section describes the differences between
<P>
versions 0.98i and 0.99b, and also between the corresponding standard
styles. There were a lot of differences; there will be a lot fewer
between 0.99 and 1.00.
<P>
<H2><A NAME="SECTION00021000000000000000">
2.1 New
<P>
features</A>
</H2>
<P>
<A NAME="features"></A>
<P>
The following list explains 's new features and how to use
them.
<P>
<OL>
<LI>With the single command `<code>\nocite{*}</code>' you can now include
in the reference list every entry in the database files, without having
to explicitly <code>\cite</code> or <code>\nocite</code> each entry.
Giving this command, in essence, <code>\nocite</code>s all the enties
in the database, in database order, at the very spot in your document
where you give the command.
</LI>
<LI><A NAME="concat"></A> You can now have as a field value (or an <TT>@STRING</TT>
definition) the concatenation of several strings. For example if you've
defined <PRE>
@STRING( WGA = " World Gnus Almanac" )
</PRE> then it's easy to produce nearly-identical <TT>title</TT> fields
for different entries: <PRE>
@BOOK(almanac-66,
title = 1966 # WGA,
. . .
@BOOK(almanac-67,
title = 1967 # WGA,
</PRE> and so on. Or, you could have a field like <PRE>
month = "1~" # jan,
</PRE> which would come out something like `<code>1~January</code>' or
`<code>1~Jan.</code>' in the <TT>bbl</TT> file, depending on how
your bibliography style defines the <TT>jan</TT> abbreviation. You
may concatenate as many strings as you like (except that there's a
limit to the overall length of the resulting field); just be sure
to put the concatenation character `<TT>#</TT>', surrounded
by optional spaces or newlines, between each successive pair of strings.
</LI>
<LI>
<P>
has a new cross-referencing feature, explained by an example. Suppose
you say <code>\cite{no-gnats}</code> in your document, and suppose
you have these two entries in your database file: <PRE>
@INPROCEEDINGS(no-gnats,
crossref = "gg-proceedings",
author = "Rocky Gneisser",
title = "No Gnats Are Taken for Granite",
pages = "133-139")
. . .
@PROCEEDINGS(gg-proceedings,
editor = "Gerald Ford and Jimmy Carter",
title = "The Gnats and Gnus 1988 Proceedings",
booktitle = "The Gnats and Gnus 1988 Proceedings")
</PRE> Two things happen. First, the special <TT>crossref</TT> field
tells
<P>
that the <TT>no-gnats</TT> entry should inherit any fields
it's missing from the entry it cross references, <TT>gg-proceedings</TT>.
In this case it in inherits the two fields <TT>editor</TT>
and <TT>booktitle</TT>. Note that, in the standard styles
at least, the <TT>booktitle</TT> field is irrelevant for the
<TT>PROCEEDINGS</TT> entry type. The <TT>booktitle</TT>
field appears here in the <TT>gg-proceedings</TT> entry only
so that the entries that cross reference it may inherit the field.
No matter how many papers from this meeting exist in the database,
this <TT>booktitle</TT> field need only appear once.
<P>
The second thing that happens:
<P>
automatically puts the entry <TT>gg-proceedings</TT> into
the reference list if it's cross referenced by two or more entries
that you <code>\cite</code> or <code>\nocite</code>, even if you don't
<code>\cite</code> or <code>\nocite</code> the <TT>gg-proceedings</TT>
entry itself. So <TT>gg-proceedings</TT> will automatically
appear on the reference list if one other entry besides <TT>no-gnats</TT>
cross references it.
<P>
To guarantee that this scheme works, however, a cross-referenced entry
must occur later in the database files than every entry that cross-references
it. Thus, putting all cross-referenced entries at the end makes sense.
(Moreover, you may not reliably nest cross references; that is, a
cross-referenced entry may not itself reliably cross reference an
entry. This is almost certainly not something you'd want to do, though.)
<P>
One final note: This cross-referencing feature is completely unrelated
to the old 's cross referencing, which is still allowed. Thus,
having a field like <PRE>
note = "Jones \cite{jones-proof} improves the result"
</PRE> is not affected by the new feature.
<P>
</LI>
<LI>
<P>
now handles accented characters. For example if you have an entry
with the two fields <PRE>
author = "Kurt G{\"o}del",
year = 1931,
</PRE> and if you're using the <TT>alpha</TT> bibliography style,
then
<P>
will construct the label [G&#246;d31] for this entry, which
is what you'd want. To get this feature to work you must place the
entire accented character in braces; in this case either <code>{\"o}</code>
or <code>{\"{o}}</code> will do. Furthermore these braces must not
themselves be enclosed in braces (other than the ones that might delimit
the entire field or the entire entry); and there must be a backslash
as the very first character inside the braces. Thus neither <code>{G{\"{o}}del}</code>
nor <code>{G\"{o}del}</code> will work for this example.
<P>
This feature handles all the accented characters and all but the nonbackslashed
foreign symbols found in Tables 3.1 and&nbsp;3.2 of the L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X book.
This feature behaves similarly for ``accents'' you might define;
we'll see an example shortly. For the purposes of counting letters
in labels,
<P>
considers everything contained inside the braces as a single letter.
<P>
</LI>
<LI>
<P>
also handles hyphenated names. For example if you have an entry with
<PRE>
author = "Jean-Paul Sartre",
</PRE> and if you're using the <TT>abbrv</TT> style, then the result
is `J.-P. Sartre'.
</LI>
<LI><A NAME="preamble"></A> There's now an <code>@PREAMBLE</code> command
for the database files. This command's syntax is just like <code>@STRING</code>'s,
except that there is no name or equals-sign, just the string. Here's
an example: <PRE>
@PREAMBLE{ "\newcommand{\noopsort}[1]{} "
# "\newcommand{\singleletter}[1]{#1} " }
</PRE> (note the use of concatenation here, too). The standard styles output
whatever information you give this command (L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X macros most
likely) directly to the <TT>bbl</TT> file. We'll look at one possible
use of this command, based on the <code>\noopsort</code> command
just defined.
<P>
The issue here is sorting (alphabetizing).
<P>
does a pretty good job, but occasionally weird circumstances conspire
to confuse : Suppose that you have entries in your database
for the two books in a two-volume set by the same author, and that
you'd like volume&nbsp;1 to appear just before volume&nbsp;2 in your reference
list. Further suppose that there's now a second edition of volume&nbsp;1,
which came out in 1973, say, but that there's still just one edition
of volume&nbsp;2, which came out in 1971. Since the <TT>plain</TT> standard
style sorts by author and then year, it will place volume&nbsp;2 first
(because its edition came out two years earlier) unless you help .
You can do this by using the <TT>year</TT> fields below for the two
volumes: <PRE>
year = "{\noopsort{a}}1973"
. . .
year = "{\noopsort{b}}1971"
</PRE> According to the definition of <code>\noopsort</code>, L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X will
print nothing but the true year for these fields. But
<P>
will be perfectly happy pretending that <code>\noopsort</code> specifies
some fancy accent that's supposed to adorn the `a' and the&nbsp;`b'; thus
when
<P>
sorts it will pretend that `a1973' and `b1971' are the real years,
and since `a' comes before&nbsp;`b', it will place volume&nbsp;1 before
volume&nbsp;2, just what you wanted. By the way, if this author has any
other works included in your database, you'd probably want to use
instead something like <code>{\noopsort{1968a}}1973</code> and <code>{\noopsort{1968b}}1971</code>,
so that these two books would come out in a reasonable spot relative
to the author's other works (this assumes that 1968 results in a reasonable
spot, say because that's when the first edition of volume&nbsp;1 appeared).
<P>
There is a limit to the number of <code>@PREAMBLE</code> commands
you may use, but you'll never exceed this limit if you restrict yourself
to one per database file; this is not a serious restriction, given
the concatenation feature (item&nbsp;<A HREF="btxdoc.html#concat">2</A>).
<P>
</LI>
<LI>'s sorting algorithm is now stable. This means that if two
entries have identical sort keys, those two entries will appear in
citation order. (The bibliography styles construct these sort keys--usually
the author information followed by the year and the title.)
</LI>
<LI>
<P>
no longer does case conversion for file names; this will make
<P>
easier to install on Unix systems, for example.
</LI>
<LI>It's now easier to add code for processing a command-line <TT>aux</TT>-file
name.
</LI>
</OL>
<P>
<H2><A NAME="SECTION00022000000000000000">
2.2 Changes to the standard styles</A>
</H2>
<P>
This section describes changes to the standard styles (<TT>plain</TT>,
<TT>unsrt</TT>, <TT>alpha</TT>, <TT>abbrv</TT>) that affect ordinary
users. Changes that affect style designers appear in the document
``Designing
<P>
Styles''&nbsp;[<A
HREF="btxdoc.html#btxhak">3</A>].
<P>
<OL>
<LI>In general, sorting is now by ``author'', then year, then
title--the old versions didn't use the year field. (The <TT>alpha</TT>
style, however, sorts first by label, then ``author'', year,
and title.) The quotes around author mean that some entry types might
use something besides the author, like the editor or organization.
</LI>
<LI>Many unnecessary ties (<code>~</code>) have been removed. L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X thus
will produce slightly fewer `<TT>Underfull</TT>
<P>
<code>\hbox</code>' messages when it's formatting the reference list.
</LI>
<LI>Emphasizing (<code>{\em ...}</code>) has replaced italicizing (<code>{\it ...}</code>).
This will almost never result in a difference between the old output
and the new.
</LI>
<LI>The <TT>alpha</TT> style now uses a superscripted&nbsp;`<IMG
WIDTH="14" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
SRC="img2.png"
ALT="$^{+}$">' instead
of a&nbsp;`*' to represent names omitted in constructing the label.
If you really liked it the way it was, however, or if you want to
omit the character entirely, you don't have to modify the style file--you
can override the&nbsp;`<IMG
WIDTH="14" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
SRC="img2.png"
ALT="$^{+}$">' by redefining the <code>\etalchar</code>
command that the <TT>alpha</TT> style writes onto the <TT>bbl</TT>
file (just preceding the <code>\thebibliography</code> environment);
use L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X's <code>\renewcommand</code> inside a database <TT>@PREAMBLE</TT>
command, described in the previous subsection's item&nbsp;<A HREF="btxdoc.html#preamble">6</A>.
</LI>
<LI>The <TT>abbrv</TT> style now uses `Mar.' and `Sept.' for those months rather than `March' and `Sep.'
</LI>
<LI>The standard styles use 's new cross-referencing feature by
giving a <code>\cite</code> of the cross-referenced entry and by omitting
from the cross-referencing entry (most of the) information that appears
in the cross-referenced entry. These styles do this when a titled
thing (the cross-referencing entry) is part of a larger titled thing
(the cross-referenced entry). There are five such situations: when
(1)&nbsp;an <TT>INPROCEEDINGS</TT> (or <TT>CONFERENCE</TT>,
which is the same) cross references a <TT>PROCEEDINGS</TT>;
when (2)&nbsp;a <TT>BOOK</TT>, (3)&nbsp;an <TT>INBOOK</TT>, or (4)&nbsp;an
<TT>INCOLLECTION</TT> cross references a <TT>BOOK</TT> (in
these cases, the cross-referencing entry is a single volume in a multi-volume
work); and when (5)&nbsp;an <TT>ARTICLE</TT> cross references
an <TT>ARTICLE</TT> (in this case, the cross-referenced entry
is really a journal, but there's no <TT>JOURNAL</TT> entry
type; this will result in warning messages about an empty <TT>author</TT>
and <TT>title</TT> for the journal--you should just ignore
these warnings).
</LI>
<LI>The <TT>MASTERSTHESIS</TT> and <TT>PHDTHESIS</TT>
entry types now take an optional <TT>type</TT> field. For example
you can get the standard styles to call your reference a `Ph.D. dissertation'
instead of the default `PhD thesis' by including a <PRE>
type = "{Ph.D.} dissertation"
</PRE> in your database entry.
</LI>
<LI>Similarly, the <TT>INBOOK</TT> and <TT>INCOLLECTION</TT>
entry types now take an optional <TT>type</TT> field, allowing `section&nbsp;1.2'
instead of the default `chapter&nbsp;1.2'. You get this by putting
<PRE>
chapter = "1.2",
type = "Section"
</PRE> in your database entry.
</LI>
<LI>The <TT>BOOKLET</TT>, <TT>MASTERSTHESIS</TT>, and
<TT>TECHREPORT</TT> entry types now format their <TT>title</TT>
fields as if they were <TT>ARTICLE</TT>
<P>
<TT>title</TT>s rather than <TT>BOOK</TT>
<P>
<TT>title</TT>s.
</LI>
<LI>The <TT>PROCEEDINGS</TT> and <TT>INPROCEEDINGS</TT>
entry types now use the <TT>address</TT> field to tell where
a conference was held, rather than to give the address of the publisher
or organization. If you want to include the publisher's or organization's
address, put it in the <TT>publisher</TT> or <TT>organization</TT>
field.
</LI>
<LI>The <TT>BOOK</TT>, <TT>INBOOK</TT>, <TT>INCOLLECTION</TT>,
and <TT>PROCEEDINGS</TT> entry types now allow either <TT>volume</TT>
or <TT>number</TT> (but not both), rather than just <TT>volume</TT>.
</LI>
<LI>The <TT>INCOLLECTION</TT> entry type now allows a <TT>series</TT>
and an <TT>edition</TT> field.
</LI>
<LI>The <TT>INPROCEEDINGS</TT> and <TT>PROCEEDINGS</TT>
entry types now allow either a <TT>volume</TT> or <TT>number</TT>,
and also a <TT>series</TT> field.
</LI>
<LI>The <TT>UNPUBLISHED</TT> entry type now outputs, in one block,
the <TT>note</TT> field followed by the date information.
</LI>
<LI>The <TT>MANUAL</TT> entry type now prints out the <TT>organization</TT>
in the first block if the <TT>author</TT> field is empty.
</LI>
<LI>The <TT>MISC</TT> entry type now issues a warning if all the optional
fields are empty (that is, if the entire entry is empty).
</LI>
</OL>
<P>
<H1><A NAME="SECTION00030000000000000000">
3 The Entries</A>
</H1>
<P>
<A NAME="latex-appendix"></A>
<P>
This section is simply a corrected version of Appendix&nbsp;B.2 of the
L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X book&nbsp;[<A
HREF="btxdoc.html#latex">2</A>], &#169;&nbsp;1986, by Addison-Wesley.
The basic scheme is the same, only a few details have changed.
<P>
<H2><A NAME="SECTION00031000000000000000">
3.1 Entry Types</A>
</H2>
<P>
When entering a reference in the database, the first thing to decide
is what type of entry it is. No fixed classification scheme can be
complete, but
<P>
provides enough entry types to handle almost any reference reasonably
well.
<P>
References to different types of publications contain different information;
a reference to a journal article might include the volume and number
of the journal, which is usually not meaningful for a book. Therefore,
database entries of different types have different fields. For each
entry type, the fields are divided into three classes:
<P>
<DL>
<DT><STRONG>required</STRONG></DT>
<DD>Omitting the field will produce a warning message and,
rarely, a badly formatted bibliography entry. If the required information
is not meaningful, you are using the wrong entry type. However, if
the required information is meaningful but, say, already included
is some other field, simply ignore the warning.
</DD>
<DT><STRONG>optional</STRONG></DT>
<DD>The field's information will be used if present, but can
be omitted without causing any formatting problems. You should include
the optional field if it will help the reader.
</DD>
<DT><STRONG>ignored</STRONG></DT>
<DD>The field is ignored.
<P>
ignores any field that is not required or optional, so you can include
any fields you want in a <TT>bib</TT> file entry. It's a good
idea to put all relevant information about a reference in its <TT>bib</TT>
file entry--even information that may never appear in the bibliography.
For example, if you want to keep an abstract of a paper in a computer
file, put it in an <TT>abstract</TT> field in the paper's
<TT>bib</TT> file entry. The <TT>bib</TT> file is
likely to be as good a place as any for the abstract, and it is possible
to design a bibliography style for printing selected abstracts. Note:
Misspelling a field name will result in its being ignored, so watch
out for typos (especially for optional fields, since
<P>
won't warn you when those are missing).
</DD>
</DL>
The following are the standard entry types, along with their required
and optional fields, that are used by the standard bibliography styles.
The fields within each class (required or optional) are listed in
order of occurrence in the output, except that a few entry types may
perturb the order slightly, depending on what fields are missing.
These entry types are similar to those adapted by Brian Reid from
the classification scheme of van&nbsp;Leunen&nbsp;[<A
HREF="btxdoc.html#van-leunen">4</A>] for use
in the <I>Scribe</I> system. The meanings of the individual fields
are explained in the next section. Some nonstandard bibliography styles
may ignore some optional fields in creating the reference. Remember
that, when used in the <TT>bib</TT> file, the entry-type name
is preceded by an <TT>@</TT> character.
<P>
<P>
<DL>
<DT><STRONG>article</STRONG></DT>
<DD>An article from a journal or magazine. Required
fields: <TT>author</TT>, <TT>title</TT>, <TT>journal</TT>,
<TT>year</TT>. Optional fields: <TT>volume</TT>, <TT>number</TT>,
<TT>pages</TT>, <TT>month</TT>, <TT>note</TT>.
</DD>
<DT><STRONG>book</STRONG></DT>
<DD>A book with an explicit publisher. Required fields:
<TT>author</TT> or <TT>editor</TT>, <TT>title</TT>,
<TT>publisher</TT>, <TT>year</TT>. Optional fields:
<TT>volume</TT> or <TT>number</TT>, <TT>series</TT>,
<TT>address</TT>, <TT>edition</TT>, <TT>month</TT>,
<TT>note</TT>.
</DD>
<DT><STRONG>booklet</STRONG></DT>
<DD>A work that is printed and bound, but without a
named publisher or sponsoring institution. Required field: <TT>title</TT>.
Optional fields: <TT>author</TT>, <TT>howpublished</TT>,
<TT>address</TT>, <TT>month</TT>, <TT>year</TT>,
<TT>note</TT>.
</DD>
<DT><STRONG>conference</STRONG></DT>
<DD>The same as <TT>INPROCEEDINGS</TT>, included
for <I>Scribe</I> compatibility.
</DD>
<DT><STRONG>inbook</STRONG></DT>
<DD>A part of a book, which may be a chapter (or section
or whatever) and/or a range of pages. Required fields: <TT>author</TT>
or <TT>editor</TT>, <TT>title</TT>, <TT>chapter</TT>
and/or <TT>pages</TT>, <TT>publisher</TT>, <TT>year</TT>.
Optional fields: <TT>volume</TT> or <TT>number</TT>,
<TT>series</TT>, <TT>type</TT>, <TT>address</TT>,
<TT>edition</TT>, <TT>month</TT>, <TT>note</TT>.
</DD>
<DT><STRONG>incollection</STRONG></DT>
<DD>A part of a book having its own title. Required
fields: <TT>author</TT>, <TT>title</TT>, <TT>booktitle</TT>,
<TT>publisher</TT>, <TT>year</TT>. Optional fields:
<TT>editor</TT>, <TT>volume</TT> or <TT>number</TT>,
<TT>series</TT>, <TT>type</TT>, <TT>chapter</TT>,
<TT>pages</TT>, <TT>address</TT>, <TT>edition</TT>,
<TT>month</TT>, <TT>note</TT>.
</DD>
<DT><STRONG>inproceedings</STRONG></DT>
<DD>An article in a conference proceedings. Required
fields: <TT>author</TT>, <TT>title</TT>, <TT>booktitle</TT>,
<TT>year</TT>. Optional fields: <TT>editor</TT>, <TT>volume</TT>
or <TT>number</TT>, <TT>series</TT>, <TT>pages</TT>,
<TT>address</TT>, <TT>month</TT>, <TT>organization</TT>,
<TT>publisher</TT>, <TT>note</TT>.
</DD>
<DT><STRONG>manual</STRONG></DT>
<DD>Technical documentation. Required field: <TT>title</TT>.
Optional fields: <TT>author</TT>, <TT>organization</TT>,
<TT>address</TT>, <TT>edition</TT>, <TT>month</TT>,
<TT>year</TT>, <TT>note</TT>.
</DD>
<DT><STRONG>mastersthesis</STRONG></DT>
<DD>A Master's thesis. Required fields: <TT>author</TT>,
<TT>title</TT>, <TT>school</TT>, <TT>year</TT>.
Optional fields: <TT>type</TT>, <TT>address</TT>,
<TT>month</TT>, <TT>note</TT>.
</DD>
<DT><STRONG>misc</STRONG></DT>
<DD>Use this type when nothing else fits. Required fields:
none. Optional fields: <TT>author</TT>, <TT>title</TT>,
<TT>howpublished</TT>, <TT>month</TT>, <TT>year</TT>,
<TT>note</TT>.
</DD>
<DT><STRONG>phdthesis</STRONG></DT>
<DD>A PhD thesis. Required fields: <TT>author</TT>,
<TT>title</TT>, <TT>school</TT>, <TT>year</TT>.
Optional fields: <TT>type</TT>, <TT>address</TT>,
<TT>month</TT>, <TT>note</TT>.
</DD>
<DT><STRONG>proceedings</STRONG></DT>
<DD>The proceedings of a conference. Required fields:
<TT>title</TT>, <TT>year</TT>. Optional fields: <TT>editor</TT>,
<TT>volume</TT> or <TT>number</TT>, <TT>series</TT>,
<TT>address</TT>, <TT>month</TT>, <TT>organization</TT>,
<TT>publisher</TT>, <TT>note</TT>.
</DD>
<DT><STRONG>techreport</STRONG></DT>
<DD>A report published by a school or other institution,
usually numbered within a series. Required fields: <TT>author</TT>,
<TT>title</TT>, <TT>institution</TT>, <TT>year</TT>.
Optional fields: <TT>type</TT>, <TT>number</TT>, <TT>address</TT>,
<TT>month</TT>, <TT>note</TT>.
</DD>
<DT><STRONG>unpublished</STRONG></DT>
<DD>A document having an author and title, but not
formally published. Required fields: <TT>author</TT>, <TT>title</TT>,
<TT>note</TT>. Optional fields: <TT>month</TT>, <TT>year</TT>.
</DD>
</DL>
In addition to the fields listed above, each entry type also has an
optional <TT>key</TT> field, used in some styles for alphabetizing,
for cross referencing, or for forming a <code>\bibitem</code> label.
You should include a <TT>key</TT> field for any entry whose
``author'' information is missing; the ``author'' information
is usually the <TT>author</TT> field, but for some entry types
it can be the <TT>editor</TT> or even the <TT>organization</TT>
field (Section&nbsp;<A HREF="btxdoc.html#odds-and-ends">4</A> describes this in more detail).
Do not confuse the <TT>key</TT> field with the key that appears
in the <code>\cite</code> command and at the beginning of the database
entry; this field is named ``key'' only for compatibility with
<I>Scribe</I>.
<P>
<H2><A NAME="SECTION00032000000000000000">
3.2 Fields</A>
</H2>
<P>
Below is a description of all fields recognized by the standard bibliography
styles. An entry can also contain other fields, which are ignored
by those styles.
<P>
<DL>
<DT><STRONG>address</STRONG></DT>
<DD>Usually the address of the <TT>publisher</TT>
or other type of institution. For major publishing houses, van&nbsp;Leunen
recommends omitting the information entirely. For small publishers,
on the other hand, you can help the reader by giving the complete
address.
</DD>
<DT><STRONG>annote</STRONG></DT>
<DD>An annotation. It is not used by the standard bibliography
styles, but may be used by others that produce an annotated bibliography.
</DD>
<DT><STRONG>author</STRONG></DT>
<DD>The name(s) of the author(s), in the format described
in the L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X book.
</DD>
<DT><STRONG>booktitle</STRONG></DT>
<DD>Title of a book, part of which is being cited.
See the L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X book for how to type titles. For book entries,
use the <TT>title</TT> field instead.
</DD>
<DT><STRONG>chapter</STRONG></DT>
<DD>A chapter (or section or whatever) number.
</DD>
<DT><STRONG>crossref</STRONG></DT>
<DD>The database key of the entry being cross referenced.
</DD>
<DT><STRONG>edition</STRONG></DT>
<DD>The edition of a book--for example, ``Second''.
This should be an ordinal, and should have the first letter capitalized,
as shown here; the standard styles convert to lower case when necessary.
</DD>
<DT><STRONG>editor</STRONG></DT>
<DD>Name(s) of editor(s), typed as indicated in the L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X book.
If there is also an <TT>author</TT> field, then the <TT>editor</TT>
field gives the editor of the book or collection in which the reference
appears.
</DD>
<DT><STRONG>howpublished</STRONG></DT>
<DD>How something strange has been published. The
first word should be capitalized.
</DD>
<DT><STRONG>institution</STRONG></DT>
<DD>The sponsoring institution of a technical report.
</DD>
<DT><STRONG>journal</STRONG></DT>
<DD>A journal name. Abbreviations are provided for many
journals; see the <I>Local Guide</I>.
</DD>
<DT><STRONG>key</STRONG></DT>
<DD>Used for alphabetizing, cross referencing, and creating
a label when the ``author'' information (described in Section&nbsp;<A HREF="btxdoc.html#odds-and-ends">4</A>)
is missing. This field should not be confused with the key that appears
in the <code>\cite</code> command and at the beginning of the database
entry.
</DD>
<DT><STRONG>month</STRONG></DT>
<DD>The month in which the work was published or, for
an unpublished work, in which it was written. You should use the standard
three-letter abbreviation, as described in Appendix B.1.3 of the L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X book.
</DD>
<DT><STRONG>note</STRONG></DT>
<DD>Any additional information that can help the reader.
The first word should be capitalized.
</DD>
<DT><STRONG>number</STRONG></DT>
<DD>The number of a journal, magazine, technical report,
or of a work in a series. An issue of a journal or magazine is usually
identified by its volume and number; the organization that issues
a technical report usually gives it a number; and sometimes books
are given numbers in a named series.
</DD>
<DT><STRONG>organization</STRONG></DT>
<DD>The organization that sponsors a conference
or that publishes a manual.
</DD>
<DT><STRONG>pages</STRONG></DT>
<DD>One or more page numbers or range of numbers, such
as <TT>42-111</TT> or <TT>7,41,73-97</TT> or <TT>43+</TT>
(the `<TT>+</TT>' in this last example indicates pages following that
don't form a simple range). To make it easier to maintain <I>Scribe</I>-compatible
databases, the standard styles convert a single dash (as in <TT>7-33</TT>)
to the double dash used in T<SMALL>E</SMALL>X to denote number ranges (as in
<TT>7-33</TT>).
</DD>
<DT><STRONG>publisher</STRONG></DT>
<DD>The publisher's name.
</DD>
<DT><STRONG>school</STRONG></DT>
<DD>The name of the school where a thesis was written.
</DD>
<DT><STRONG>series</STRONG></DT>
<DD>The name of a series or set of books. When citing
an entire book, the the <TT>title</TT> field gives its title
and an optional <TT>series</TT> field gives the name of a
series or multi-volume set in which the book is published.
</DD>
<DT><STRONG>title</STRONG></DT>
<DD>The work's title, typed as explained in the L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X book.
</DD>
<DT><STRONG>type</STRONG></DT>
<DD>The type of a technical report--for example, ``Research
Note''.
</DD>
<DT><STRONG>volume</STRONG></DT>
<DD>The volume of a journal or multivolume book.
</DD>
<DT><STRONG>year</STRONG></DT>
<DD>The year of publication or, for an unpublished work,
the year it was written. Generally it should consist of four numerals,
such as <TT>1984</TT>, although the standard styles can handle any
<TT>year</TT> whose last four nonpunctuation characters are numerals,
such as `(about 1984)'.
</DD>
</DL>
<P>
<H1><A NAME="SECTION00040000000000000000">
4 Helpful Hints</A>
</H1>
<P>
<A NAME="odds-and-ends"></A>
<P>
This section gives some random tips that aren't documented elsewhere,
at least not in this detail. They are, roughly, in order of least
esoteric to most. First, however, a brief spiel.
<P>
I understand that there's often little choice in choosing a bibliography
style--journal&nbsp;<IMG
WIDTH="17" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img3.png"
ALT="$X$"> says you must use style&nbsp;<IMG
WIDTH="16" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img4.png"
ALT="$Y$"> and that's that.
If you have a choice, however, I strongly recommend that you choose
something like the <TT>plain</TT> standard style. Such a style, van&nbsp;Leunen&nbsp;[<A
HREF="btxdoc.html#van-leunen">4</A>]
argues convincingly, encourages better writing than the alternatives--more
concrete, more vivid.
<P>
<I>The Chicago Manual of Style</I>&nbsp;[<A
HREF="btxdoc.html#chicago">1</A>], on the other
hand, espouse the author-date system, in which the citation might
appear in the text as `(Jones, 1986)'. I argue that this system,
besides cluttering up the text with information that may or may not
be relevant, encourages the passive voice and vague writing. Furthermore
the strongest arguments for using the author-date system--like ``it's
the most practical''--fall flat on their face with the advent of
computer-typesetting technology. For instance the <I>Chicago Manual</I>
contains, right in the middle of page&nbsp;401, this anachronism: ``The
chief disadvantage of [a style like <TT>plain</TT>] is that additions
or deletions cannot be made after the manuscript is typed without
changing numbers in both text references and list.'' L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X, obviously,
sidesteps the disadvantage.
<P>
Finally, the logical deficiencies of the author-date style are quite
evident once you've written a program to implement it. For example,
in a large bibliography, using the standard alphabetizing scheme,
the entry for `(Aho et&nbsp;al., 1983b)' might be half a page later than
the one for `(Aho et&nbsp;al., 1983a)'. Fixing this problem results
in even worse ones. What a mess. (I have, unfortunately, programmed
such a style, and if you're saddled with an unenlightened publisher
or if you don't buy my propaganda, it's available from the Rochester
style collection.)
<P>
Ok, so the spiel wasn't very brief; but it made me feel better, and
now my blood pressure is back to normal. Here are the tips for using
<P>
with the standard styles (although many of them hold for nonstandard
styles, too).
<P>
<OL>
<LI>With 's style-designing language you can program general database
manipulations, in addition to bibliography styles. For example it's
a fairly easy task for someone familiar with the language to produce
a database-key/author index of all the entries in a database. Consult
the <I>Local Guide</I> to see what tools are available on your
system.
</LI>
<LI>The standard style's thirteen entry types do reasonably well at formatting
most entries, but no scheme with just thirteen formats can do everything
perfectly. Thus, you should feel free to be creative in how you use
these entry types (but if you have to be too creative, there's a good
chance you're using the wrong entry type).
</LI>
<LI>Don't take the field names too seriously. Sometimes, for instance,
you might have to include the publisher's address along with the publisher's
name in the <TT>publisher</TT> field, rather than putting
it in the <TT>address</TT> field. Or sometimes, difficult
entries work best when you make judicious use of the <TT>note</TT>
field.
</LI>
<LI>Don't take the warning messages too seriously. Sometimes, for instance,
the year appears in the title, as in <I>The 1966 World Gnus Almanac</I>.
In this case it's best to omit the <TT>year</TT> field and to ignore
's warning message.
</LI>
<LI>If you have too many names to list in an <TT>author</TT> or
<TT>editor</TT> field, you can end the list with ``and
others''; the standard styles appropriately append an ``et&nbsp;al.''
</LI>
<LI>In general, if you want to keep
<P>
from changing something to lower case, you enclose it in braces. You
might not get the effect you want, however, if the very first character
after the left brace is a backslash. The ``special characters''
item later in this section explains.
</LI>
<LI>For <I>Scribe</I> compatibility, the database files allow an
<TT>@COMMENT</TT> command; it's not really needed because
<P>
allows in the database files any comment that's not within an entry.
If you want to comment out an entry, simply remove the `<TT>@</TT>'
character preceding the entry type.
</LI>
<LI>The standard styles have journal abbreviations that are computer-science
oriented; these are in the style files primarily for the example.
If you have a different set of journal abbreviations, it's sensible
to put them in <TT>@STRING</TT> commands in their own database
file and to list this database file as an argument to L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X's <code>\bibliography</code>
command (but you should list this argument before the ones that specify
real database entries).
</LI>
<LI>It's best to use the three-letter abbreviations for the month, rather
than spelling out the month yourself. This lets the bibliography style
be consistent. And if you want to include information for the day
of the month, the <TT>month</TT> field is usually the best place.
For example <PRE>
month = jul # "~4,"
</PRE> will probably produce just what you want.
</LI>
<LI>If you're using the <TT>unsrt</TT> style (references are listed
in order of citation) along with the <code>\nocite{*}</code> feature
(all entries in the database are included), the placement of the <code>\nocite{*}</code>
command within your document file will determine the reference order.
According to the rule given in Section&nbsp;<A HREF="btxdoc.html#features">2.1</A>: If the command
is placed at the beginning of the document, the entries will be listed
in exactly the order they occur in the database; if it's placed at
the end, the entries that you explicitly <code>\cite</code> or <code>\nocite</code>
will occur in citation order, and the remaining database entries will
be in database order.
</LI>
<LI>For theses, van Leunen recommends not giving the school's department
after the name of the degree, since schools, not departments, issue
degrees. If you really think that giving the department information
will help the reader find the thesis, put that information in the
<TT>address</TT> field.
</LI>
<LI>The <TT>MASTERSTHESIS</TT> and <TT>PHDTHESIS</TT>
entry types are so named for <I>Scribe</I> compatibility; <TT>MINORTHESIS</TT>
and <TT>MAJORTHESIS</TT> probably would have been better names.
Keep this in mind when trying to classify a non-U.S. thesis.
</LI>
<LI>Here's yet another suggestion for what to do when an author's name
appears slightly differently in two publications. Suppose, for example,
two journals articles use these fields. <PRE>
author = "Donald E. Knuth"
. . .
author = "D. E. Knuth"
</PRE> There are two possibilities. You could (1)&nbsp;simply leave them as
is, or (2)&nbsp;assuming you know for sure that these authors are one
and the same person, you could list both in the form that the author
prefers (say, `Donald&nbsp;E. Knuth'). In the first case, the entries
might be alphabetized incorrectly, and in the second, the slightly
altered name might foul up somebody's electronic library search. But
there's a third possibility, which is the one I prefer. You could
convert the second journal's field to <PRE>
author = "D[onald] E. Knuth"
</PRE> This avoids the pitfalls of the previous two solutions, since
<P>
alphabetizes this as if the brackets weren't there, and since the
brackets clue the reader in that a full first name was missing from
the original. Of course it introduces another pitfall--`D[onald]&nbsp;E. Knuth'
looks ugly--but in this case I think the increase in accuracy outweighs
the loss in aesthetics.
</LI>
<LI>L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X's comment character `<TT>%</TT>' is not a comment character
in the database files.
</LI>
<LI>Here's a more complete description of the ``author'' information
referred to in previous sections. For most entry types the ``author''
information is simply the <TT>author</TT> field. However:
For the <TT>BOOK</TT> and <TT>INBOOK</TT> entry types
it's the <TT>author</TT> field, but if there's no author then
it's the <TT>editor</TT> field; for the <TT>MANUAL</TT>
entry type it's the <TT>author</TT> field, but if there's
no author then it's the <TT>organization</TT> field; and for
the <TT>PROCEEDINGS</TT> entry type it's the <TT>editor</TT>
field, but if there's no editor then it's the <TT>organization</TT>
field.
</LI>
<LI>When creating a label, the <TT>alpha</TT> style uses the ``author''
information described above, but with a slight change--for the <TT>MANUAL</TT>
and <TT>PROCEEDINGS</TT> entry types, the <TT>key</TT> field
takes precedence over the <TT>organization</TT> field. Here's
a situation where this is useful. <PRE>
organization = "The Association for Computing Machinery",
key = "ACM"
</PRE> Without the <TT>key</TT> field, the <TT>alpha</TT> style
would make a label from the first three letters of information in
the <TT>organization</TT> field; <TT>alpha</TT> knows
to strip off the `<TT>The </TT>', but it would still
form a label like `[Ass86]', which, however intriguing,
is uninformative. Including the <TT>key</TT> field, as above, would
yield the better label `[ACM86]'.
<P>
You won't always need the <TT>key</TT> field to override the <TT>organization</TT>,
though: With <PRE>
organization = "Unilogic, Ltd.",
</PRE> for instance, the <TT>alpha</TT> style would form the perfectly
reasonable label `[Uni86]'.
<P>
</LI>
<LI>Section&nbsp;<A HREF="btxdoc.html#features">2.1</A> discusses accented characters. To ,
an accented character is really a special case of a ``special character'',
which consists of everything from a left brace at the top-most level,
immediately followed by a backslash, up through the matching right
brace. For example in the field <PRE>
author = "\AA{ke} {Jos{\'{e}} {\'{E}douard} G{\"o}del"
</PRE> there are just two special characters, `<code>{\'{E}douard}</code>'
and `<code>{\"o}</code>' (the same would be true if the pair of
double quotes delimiting the field were braces instead). In general,
<P>
will not do any processing of a T<SMALL>E</SMALL>X or L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X control sequence
inside a special character, but it <I>will</I> process other
characters. Thus a style that converts all titles to lower case would
convert <PRE>
The {\TeX BOOK\NOOP} Experience
</PRE> to <PRE>
The {\TeX book\NOOP} experience
</PRE> (the `<TT>The</TT>' is still capitalized because it's the first word
of the title).
<P>
This special-character scheme is useful for handling accented characters,
for getting 's alphabetizing to do what you want, and, since
<P>
counts an entire special character as just one letter, for stuffing
extra characters inside labels. The file <TT>XAMPL.BIB</TT>
distributed with
<P>
gives examples of all three uses.
<P>
</LI>
<LI>This final item of the section describes 's names (which appear
in the <TT>author</TT> or <TT>editor</TT> field) in
slightly more detail than what appears in Appendix&nbsp;B of the L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X book.
In what follows, a ``name'' corresponds to a person. (Recall that
you separate multiple names in a single field with the word ``and'',
surrounded by spaces, and not enclosed in braces. This item concerns
itself with the structure of a single name.)
<P>
Each name consists of four parts: First, von, Last, and&nbsp;Jr; each
part consists of a (possibly empty) list of name-tokens. The Last
part will be nonempty if any part is, so if there's just one token,
it's always a Last token.
<P>
Recall that Per Brinch&nbsp;Hansen's name should be typed <PRE>
"Brinch Hansen, Per"
</PRE> The First part of his name has the single token ``Per''; the
Last part has two tokens, ``Brinch'' and ``Hansen''; and the
von and Jr parts are empty. If you had typed <PRE>
"Per Brinch Hansen"
</PRE> instead,
<P>
would (erroneously) think ``Brinch'' were a First-part token,
just as ``Paul'' is a First-part token in ``John&nbsp;Paul Jones'',
so this erroneous form would have two First tokens and one Last token.
<P>
Here's another example: <PRE>
"Charles Louis Xavier Joseph de la Vall{\'e}e Poussin"
</PRE> This name has four tokens in the First part, two in the von, and
two in the Last. Here
<P>
knows where one part ends and the other begins because the tokens
in the von part begin with lower-case letters.
<P>
In general, it's a von token if the first letter at brace-level&nbsp;0
is in lower case. Since technically everything in a ``special character''
is at brace-level&nbsp;0, you can trick
<P>
into thinking that a token is or is not a von token by prepending
a dummy special character whose first letter past the T<SMALL>E</SMALL>X control
sequence is in the desired case, upper or lower.
<P>
To summarize,
<P>
allows three possible forms for the name: <PRE>
"First von Last"
"von Last, First"
"von Last, Jr, First"
</PRE> You may almost always use the first form; you shouldn't if either
there's a Jr part, or the Last part has multiple tokens but there's
no von part.
<P>
</LI>
</OL>
<H2><A NAME="SECTION00050000000000000000">
Bibliography</A>
</H2><DL COMPACT><DD><P></P><DT><A NAME="chicago">1</A>
<DD>
<EM>The Chicago Manual of Style</EM>, pages 400-401.
<BR>University of Chicago Press, thirteenth edition, 1982.
<P></P><DT><A NAME="latex">2</A>
<DD>
Leslie Lamport.
<BR>L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X:<EM> A Document Preparation System</EM>.
<BR>Addison-Wesley, 1986.
<P></P><DT><A NAME="btxhak">3</A>
<DD>
Oren Patashnik.
<BR>Designing styles.
<BR>The part of 's documentation that's not meant for general
users, 8&nbsp;February 1988.
<P></P><DT><A NAME="van-leunen">4</A>
<DD>
Mary-Claire van Leunen.
<BR><EM>A Handbook for Scholars</EM>.
<BR>Knopf, 1979.
</DL>
<P>
<H1><A NAME="SECTION00060000000000000000">
About this document ...</A>
</H1>
<P>
This document was generated using the
<A HREF="http://www.latex2html.org/"><STRONG>LaTeX</STRONG>2<tt>HTML</tt></A> translator Version 2002-1 (1.68)
<P>
Copyright &#169; 1993, 1994, 1995, 1996,
<A HREF="http://cbl.leeds.ac.uk/nikos/personal.html">Nikos Drakos</A>,
Computer Based Learning Unit, University of Leeds.
<BR>Copyright &#169; 1997, 1998, 1999,
<A HREF="http://www.maths.mq.edu.au/~ross/">Ross Moore</A>,
Mathematics Department, Macquarie University, Sydney.
<P>
The command line arguments were: <BR>
<STRONG>latex2html</STRONG> <TT>-no_subdir -split 0 -show_section_numbers /tmp/lyx_tmpdir15095W9Gc8W/lyx_tmpbuf1/btxdoc.tex</TT>
<P>
The translation was initiated by root on 2002-12-22<HR>
<!--Navigation Panel-->
<IMG WIDTH="81" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next_inactive"
SRC="file:/usr/lib/latex2html/icons/nx_grp_g.png">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/lib/latex2html/icons/up_g.png">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/lib/latex2html/icons/prev_g.png">
<BR>
<!--End of Navigation Panel-->
<ADDRESS>
root
2002-12-22
</ADDRESS>
</body>
</HTML>