====== Citation Generation ====== ===== Possible approaches ===== ==== CiteProc ==== CiteProc is a common approach. A beneficial aspect of using CiteProc is that you can use any of thousands of citation styles: https://github.com/citation-style-language/styles A bunch of open source projects already use CSL/CiteProc: http://citationstyles.org/ There is a JS library, but no Perl library (yet): http://citationstyles.org/developers/ Here is some information about how LBCC uses CiteProc in its discovery layer: http://sandbergja.github.io/systems/2015/11/24/findit-bibtex ==== Eprints ==== Eprints displays citations prominently, and is also written in Perl. It might be worthwhile to learn more about Eprints does citations. https://github.com/eprints/eprints/blob/master/perl_lib/EPrints/Utils.pm#L536 Here's an example of the Eprints interface including citations: https://eprints.qut.edu.au/104121/ In fact, the browse and search interfaces use citations as the search result display: https://eprints.qut.edu.au/view/subjects/080799.html ===== Nice examples ===== * LBCC's Discovery Layer (click on Cite): http://libfind.linnbenton.edu/catalog/540196 * NOBLE includes citations in its Evergreen catalog: [[https://docs.google.com/document/d/1uFoQ7csQz_tmi4ot5DcCChwEHMbfNaEL01NwMu-aiWg/edit?usp=sharing|Adding Citations to the Catalog]]