[Top] [Contents] [Index] [ ? ]

Instructions for adding bibtex entries

1. General Guidelines  
2. Special Cases  
3. How Cross Ref Works Example  
4. Making a Bibliography  


1. General Guidelines

  1. The bibtex files are all located in the papers repository in the directory named tex_bib. Check out the papers repository following the directions in building_retina_project how-to, section 4.1 and instead of the source, check out "papers".

  2. A customized bibtex database tool called tkbibtexRPI.tcl is available for use. It is a tcl/tk script modified by Matt Turek to provide an easy to use interface for making new and modifying exisiting bibtex entries. It automatically accesses our established keywords and journal/conferences already entered in journals.txt and crossref.txt. It is located in papers/bibtex and requires tcl/tk to be installed on your machine in order to run. While not required to use, it sure makes things easier...

  3. All new bibtex entries need to go in everything.bib.

  4. Names should be in the following format:
     
       First MI Last or First~MI~Last
    as in
       Charles V. Stewart or Charles~V.~Stewart
    or
       C. V. Stewart or C.~V.~Stewart
    

    If you have a multiple word last name, for example Charles Van Loan, use:

     
       Charles {Van Loan} or Charles~{Van~Loan}
    

  5. Separate each author using the word "and"
     
      C. V. Stewart and K. Bubna and K. M. Martin and H. Shen
    

  6. All new entries should be checked for validity and have neat spacing. If you use emacs do a C-c C-c (validity check for the entry) and a C-c C-q (fixes spacing).

  7. All entry keys should be of the format authorname:jounalyear (all lower case) like jones:pami98 or doe:gao88

  8. The journal title should have a corresponding entry in the `crossref.txt' file, all in lowercase letters. Do not use the complete journal title in the entry in everything.bib. It is okay to use book titles, etc for sources from which you do not expect to have more than one differtent source from.

  9. Use the appropriate entry type. For example, if the source is from a conference, use "InProceedings"; if the source is from a journal, use "Article", etc.

  10. For journal articles, use field journal, eg. journal = tmi, for conference proceedings use field crossref (replaces booktitle), eg. crossref = {cvpr00}. You have to use curly brackets for the crossref, but you can't use it for journal.

  11. In addition to the standard fields for the entry type, each entry should have the following additional fields. If no information is available, a blank field is still desired.
     
      keywords =     { }, - as appropriate
      url =          { }, - url to paper
      paperloc =     { }  - physical location of paper if
                            a hard copy exists.
    

  12. For "paperloc", the ideal situation is if all papers (hard copies) were stored in a central location but this may not be the case. Try to explain where the paper is or the name of who has it. Examples might be "AE 124 File Cab" or "Michal" or "Michal S.". If electronic version exists, it should be in `/projects/vision/web/papers' and in the paperloc field is the key of the paper (: replaced by -), e.g. `mcinerney-tmi99.pdf'.

  13. After adding a reference, you need to commit the `everything.bib' back into the paper repository. Before committing, if new entries were made in `crossref.txt', a perl script needs to be run to update the following files: `journal_full.bib', `journal_abbrev.bib', `crossref_full.bib' and `crossref_abbrev.bib'. To run, use generate_cross_ref.pl crossref.txt. All these files need to be committed. DO NOT COMMIT IF THE PERL SCRIPT GENERATES ERRORS!

  14. All entries in crossref.txt should not end with a ",".

  15. The field names in crossref.txt should be all lowercase.

  16. If you have an electronic copy of the paper, stick it in `/projects/vision/web/papers'. Make the file name of the paper the same as the bibtex key field. For example: `jones-pami98.pdf'. (Dash replaces colon.) Add `jones-pami98.pdf' as the entry in the paperloc field.

  17. If you need to have something remain capitalized, such as RANSAC, put it between {} within the title, as in
     
       title = {{RANSAC}:  Random Sample Consensus},
    

  18. For all papers you read or add, please add a paragraph summary in the "annote" field. This doesn't have to be long. If you have read a paper someone else has already annotated, add some thoughts of your own.


2. Special Cases

Here are some example special cases:

  1. When making the key for each entry, the specified format was authorname:jounalyear. However, it maybe that the reference is a book, cd, etc. In this case, use the source like: jones:book95.

  2. It may happen that an author has multiple articles in the same journal or multiple books from the same year.

For papers that have the same author, journal/conference and the same year, the naming rule is as follows

{lastname}:{journal}{two digits of year}{suffix}

For example, using month to distinguish two papers:

comaniciu:pami03

comaniciu:pami03may

So that we can search for papers easily by looking up the {journal}{year}. We can be flexible on the suffix as it is hard to predict future (if you add comaniciu:pami03 from February, you don't know that there will be a paper from may, so the first one won't have any suffix). The original rule when we were adding 'a', 'b', ... at the end is probably not a good enough as it is not distinguishing the papers and is confusing, but it's still valid under this naming rule.

Another example, can:pami02joint can:pami02pair (these two doesn't follow the rule in the bibliography but will not be changed retrospectively).

The general rule is - the first part of any paper will be like this

{lastname}:{journal}{two digits of year}


3. How Cross Ref Works Example

A typical entry is shown below:

 
 @inproceedings{carothers:pads99,
  author =       {C.~D.~Carothers and K.~S. Permalla
                 and R.~M.~Fujimoto},
  title =        {Efficient Optimistic Parallel Simulations
                 using Reverse Computation},
  booktitle =    {Proceedings of the $13^{th}$ Workshop on Parallel
                 and Distributed Simulation (PADS'99)},
  address =      {Fort Lauderdale, Florida},
  month =        {April, 17},
  pages =        "126--135",
  year =         1999,
  keywords =     {badri.bib},
  url =          {},
  paperloc =     {}
}

This entry is from a conference (PADS). Rather than have this conference appearing in the everything.bib file multiple times in possibly many different formats, it goes in crossref.txt one time. Below is how the cross-referenced entry should look with the corresponding entry in crossref.txt These two entries together will build the entry seen above when bibtex is run.

In everything.bib

 
@inproceedings{carothers:pads99,
  author =       {C.~D.~Carothers and K.~S. Permalla and
                  R.~M.~Fujimoto},
  title =        {Efficient Optimistic Parallel Simulations using
                  Reverse Computation},
  crossref =     {pads99},
  pages =        "126--135",
  keywords =     {badri.bib},
  url =          {},
  paperloc =     {}
}

In crossref.txt:

 
proceedings:
  key =          pads99
  full_title =   {Proceedings of the $13^{th}$ Workshop on Parallel
                 and Distributed Simulation (PADS'99)},
  abbrev_title = {Proc. $13^{th}$ Work. Para. Dist. Sim.},
  year =         1999,
  address =      {Fort Lauderdale, Florida},
  month =        {17 } # apr
end.

Prior to committing, the script generate_cross_ref.pl crossref.txt is run. This parses `crossref.txt' and builds the following files:

 
 `journal_full.bib',
 `journal_abbrev.bib',
 `crossref_full.bib', and
 `crossref_abbrev.bib'.


4. Making a Bibliography

Making a bibliography using the bibtex files is easy. Detailed instructions can be found in just about any Latex book or website. Here are some basics.

  1. To add a reference to your paper, all you need is the \cite command and the entry key. For example:
     
    as discussed in \cite{stewart:siam99}.
    

  2. To generate the bibliography, all you need is the command:
     
    \bibliography{/papers/tex_bib/journal_full,
      /papers/tex_bib/everything,
      /papers/tex_bib/crossref_full}
    or
    \bibliography{/papers/tex_bib/journal_abbrev,
      /papers/tex_bib/everything,/papers/tex_bib/crossref_abbrev}
    

  3. IMPORTANT!!!!! The crossref file must be last!!!!!


[Top] [Contents] [Index] [ ? ]

Table of Contents

1. General Guidelines
2. Special Cases
3. How Cross Ref Works Example
4. Making a Bibliography

[Top] [Contents] [Index] [ ? ]

Short Table of Contents

1. General Guidelines
2. Special Cases
3. How Cross Ref Works Example
4. Making a Bibliography

[Top] [Contents] [Index] [ ? ]

About this document

This document was generated by using texi2html

The buttons in the navigation panels have the following meaning:

Button Name Go to From 1.2.3 go to
[ < ] Back previous section in reading order 1.2.2
[ > ] Forward next section in reading order 1.2.4
[ << ] FastBack beginning of this chapter or previous chapter 1
[ Up ] Up up section 1.2
[ >> ] FastForward next chapter 2
[Top] Top cover (top) of document  
[Contents] Contents table of contents  
[Index] Index concept index  
[ ? ] About this page  

where the Example assumes that the current position is at Subsubsection One-Two-Three of a document of the following structure:



This document was generated by Michal Sofka on July, 6 2006 using texi2html