EasyDeposit – DOI integration with the CrossRef API

A few weeks ago I wrote about the EasyDeposit system we’ve created at The University of Auckland Library. In a nutshell, it allows you to easily create custom web-based SWORD deposit interfaces to enable the deposit of items into your repository. We’ve used it locally to create custom deposit interfaces for PhD theses, Masters theses, and Computer Science technical reports.

One of the key features of EasyDeposit is how custom interfaces can be built by selecting from a set of ‘steps’. Each step performs a task such as allowing the user to upload files, enter metadata, login, verify the details of the deposit etc. Steps can be easily added by creating two new files – one which contains the business logic (coded in PHP) and one which contains the view (HTML). We maintain some custom steps locally to manage the licensing of theses (to select embargo terms and Creative Commons options).

I recently became aware of the CrossRef API. This web service allows you to look up the metadata of an item that has a DOI. Requests are made using a URL in the form of:

http://www.crossref.org/openurl/?id=doi:*DOI*&noredirect=true&pid=*API_KEY*&format=unixref

The whole ethos behind EasyDeposit is to enable repository administrators to create custom SWORD deposit interfaces that make it easy for their users to deposit content into their repositories. Therefore it seemed a good idea to write a new EasyDeposit step that allows users to enter a DOI instead of manually entering metadata. A typical deposit interface could now be as simple as:

I have now uploaded the ‘CrossRefDOILookup’ and ‘CrossRefDOIMetadata’ steps to the EasyDeposit site. You can use these steps (they must be used together) in your EasyDeposit interface. Here are some screenshots:

In order to use the API you must register with CrossRef. You can do this at: http://www.crossref.org/requestaccount/. Your API key will the email address that you used to sign up, and must be entered in the easydeposit.php configuration file:

// CrossRef API DOI lookup configuration
// Register for a key at http://www.crossref.org/requestaccount/
// Your API KEY is the email address that you used to register
$config['easydeposit_crossrefdoilookup_apikey'] = 'API_KEY';

As always, I’d be pleased to receive feedback about this feature.

Bookmark and Share
Posted on March 3, 2010 at 3:38 pm by Stuart · Permalink
In: Uncategorized · Tagged with: , , ,

2 Responses

Subscribe to comments via RSS

  1. Written by Ina Smith
    on May 14, 2010 at 9:47 pm
    Permalink

    Hi Stuart
    We have tried to add EasyDeposit to our instance of DSpace, and are looking for documentation? See http://easydeposit.swordapp.org/instructions/configuration We couldn’t find anything here?

    Looking forward to your response to successfully install this tool. Looks great!

    Kind regards
    Ina (University of Stellenbosch, South Africa)

  2. Written by Stuart
    on May 14, 2010 at 9:55 pm
    Permalink

    Hi Ina,

    I’m currently moving some documentation from a wiki to that new web site: http://wiki.github.com/stuartlewis/EasyDeposit/ Hopefully that will help a bit.

    The documentation is currently a bit sparse, but I’m working on it! :) if you have any particular questions please feel free to get in touch directly (stuart@stuartlewis.com)

    Thanks,

    Stuart

Subscribe to comments via RSS

Leave a Reply