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
<[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