[Tex/LaTex] How to modify citation and database entry for conf. proceeding with the iet bibliography style

bibliographiesbibtex

enter image description hereThe iet.bst file is not providing the appropriate citation for conference proceedings and database entry. How do I modify it?

The iet.bst file under section 2.6.5 on the webpage which I am using:
http://digital-library.theiet.org/journals/author-guide

The bib entries are:

@INPROCEEDINGS{byang,
        author={B. Yang and D. Hartung and K. Simoens and C. Busch},
        booktitle={IEEE International Conference on Biometrics: 
        Theory Applications and Systems (BTAS)},
        title={Dynamic random projection for biometric template protection},
        year={2010},
        pages={1-7},
        month={Sept},}

@TECHREPORT{nist,
    author = "C. I. Watson and M. D. Garris and E. Tabassi and 
    C. L. Wilson and R. M. McCabe and S. Janet and K. Ko",
    title = "User's guide to Non-Export Controlled Distribution of NIST Biometric Image Software",
    institution = "NIST",
    year = "2004"
}

@INPROCEEDINGS{ice,
    author={Phillips, P.J. and Bowyer, K.W. and Flynn, P.J. 
    and Liu, X. and Scruggs, W.T.},
    booktitle={2nd IEEE International Conference on Biometrics: Theory, Applications and Systems},
    title={The Iris Challenge Evaluation 2005},
    year={2008},
    month={Sept},
    pages={1-8},
}

  @MANUAL{fvc, 
    TITLE = "Fingerprint Verification Competition (FVC2002)", 
    NOTE = "http://bias.csr.unibo.it/fvc2002/databases.asp", 
    }

Best Answer

There are so many errors and sloppy coding practices in the file iet.bst, it's hard to tell where one should start. One of them is particularly egregious; see below.

  • Because of what are quite likely sloppy programming errors, many entry types require the presence of (non-empty) address and year fields. While requiring a year field doesn't seem that overbearing, the strict requirement for an address field is quite unusual, to say the least. Indeed, all four of the sample entries you provided need an address field. The address should be either the location of the organization that published the piece or the location of the conference.

  • An even more severe programming error in the bst file cannot be glossed over simply by adding a normally-optional field such as address. I'm afraid you'll need to fix this error by editing the file iet.bst by hand, as follows:

    • Make a copy of the file iet.bst and call the copy, say, iet-fixed.bst.

    • Open the file iet-fixed.bst in a text editor. The editor you use for your tex file will do fine.

    • Find all lines that contain the string "year" output.check. (There are more than a dozen instances.) The first instance should be around line 1449, the last one should be around line 1787.)

    • In all but one of these cases, replace the string

      "year" output.check
      

      with

      "year" output.check ")" *
      

      i.e., append ")" * to "year" output.check. In just one instance, the substring ")" * is already present; don't append the substring in that case.

  • While you're editing the bst file, you might as well fix another annoying programming error: Find the function bbl.pages -- it should start around line 557 -- and replace "pp.~" with "pp.", i.e., get rid of the tilde symbol.

  • Save the file iet-fixed.bst to the directory that contains your main tex file.

  • In your main tex file, change the instruction \bibliographystyle{iet} to \bibliographystyle{iet-fixed} and rerun LaTeX, BibTeX, and LaTeX twice more to fully propagate all changes.

Happy BibTeXing!

Here's an MWE which (a) utilizes the "fixed" version of the iet bibliography style and (b) has provided dummy address fields for all four entries. Do note that you should probably change the entry type of fvc from @manual to @misc. And, in the nist entry, do encase the acronym NIST in curly braces to prevent BibTeX from lowercasing the acronym.

enter image description here

\RequirePackage{filecontents}
\begin{filecontents}{mybib.bib}
@INPROCEEDINGS{byang,
author={B. Yang and D. Hartung and K. Simoens and C. Busch},
booktitle={IEEE International Conference on Biometrics: 
Theory Applications and Systems (BTAS)},
title={Dynamic random projection for biometric template protection},
address = "Somewhere",
year={2010},
pages={1-7},
month={Sept},
}
@TECHREPORT{nist,
author = "C. I. Watson and M. D. Garris and E. Tabassi and 
         C. L. Wilson and R. M. McCabe and S. Janet and K. Ko",
title  = "User's guide to Non-Export Controlled Distribution of 
         {NIST} Biometric Image Software",
institution = "NIST",
address = "Nowhere",
year = "2004",
}
@INPROCEEDINGS{ice,
author={Phillips, P. J. and Bowyer, K. W. and Flynn, P. J. 
    and Liu, X. and Scruggs, W. T.},
booktitle={2nd IEEE International Conference on Biometrics: Theory, Applications and Systems},
title={The {Iris Challenge Evaluation} 2005},
address="Erewhon",
year={2008},
month={Sept},
pages={1-8},
}
@misc{fvc, 
TITLE = "{Fingerprint Verification Competition} ({FVC2002})", 
NOTE = "\url{http://bias.csr.unibo.it/fvc2002/databases.asp}", 
address="Where",
year = 2002,
}
\end{filecontents}

\documentclass{article}
\usepackage{cite} % <-- a basic citation management package
\usepackage[hyphens,spaces]{url} % <-- for decent-looking URL strings
\bibliographystyle{iet-fixed}

\begin{document}
\cite{nist}, \cite{byang}, \cite{ice}, \cite{fvc}
\bibliography{mybib}
\end{document}