Print

Print


Hello Matthew:


The Islandora community utilizes and maintains a forked php version of citeproc [1].  It has been integrated into the Scholar module [2] which manages/stores citation metadata as MODS and uses the Citation Style Language you referenced in your post to transform the MODS into whatever style is specified.  There may be some patterns in the code that you can reuse.


Regards,

Donald


[1]  https://github.com/Islandora/citeproc-php
[2] https://github.com/Islandora/islandora_scholar 



>>> On 12/1/2014 at 03:07 PM, in message <LISTSERV%[log in to unmask]>, Matthew Roth<[log in to unmask]> wrote:

Hi List,

After careful consideration over the past several months our web application
has decided to store our citations in MODs as opposed to our propriety and
often problematic relational structure. Great news for sure. We are now able
to generate EndNote files, RIS files, BibTex files, DC, and MARCXML. With
the latter two being less desired by our end users. Ideally our board of
directors and (more importantly) our end users would like to generate
formatted HTML citations in various formats. For example, the way Google
scholar will give the user the choice of MLA, ALA, and Chicago. The problem
looks to be that while there are several leads, no available resource exists
for a proper HTML transformation.

The most promising one is the citeproc project and the Citation Style
Language[1]. They have projects in various stages in multiple languages.
However, of the list I am only able to function in java, python, and
JavaScript. The problem to me is that most expect a JSON format that is not
too well documented--as best as I can tell, some of the discussions I've
come across on this format our several years old at this point. 

Only one purports to work with MODs. citeproc-hs[2] a haskell library seems
to have once expected MODs, but 1. I am not familiar with haskell and two it
appears to not have been kept to date. I have not ruled it out completely,
but need to consult a primer on haskell first.

The python library, citeproc-py[3] claims to work with bibtex. However, they
are still having issues with UTF-8[4]. Additionally, either the mapping is
off in their BibTex parser or bibutils[5] is producing poor BibTex files
from the inputted MODs files. Finally, the library according to the
README.rst[6] is still not ready for production.

Ideally, there would be an Xquery/XSL transformation that we could call from
our web application which is built upon exist-db[7]. I suppose our next step
may be writing our own transformation, however, it seems like coming to this
as a programmer and not a librarian I may not be searching in all the right
places. Do I need to write my own transformation, or has the wheel already
been created?



[1]http://citationstyles.org/
[2]https://hackage.haskell.org/package/citeproc-hs
[3]https://github.com/brechtm/citeproc-py
[4]https://github.com/brechtm/citeproc-py/issues/25
[5]https://sourceforge.net/projects/bibutils/
[6]https://github.com/brechtm/citeproc-py/blob/master/README.rst#citeproc-py
[7]http://exist-db.org/exist/apps/homepage/index.html