DSpace DIDL Plug-In

Introduction | Disclaimer | Version History | Latest Release | Installation Instructions

_ Introduction

This plug-in empowers a DSpace repository to make its contained Items harvestable through the OAI-PMH protocol. Via the plug-in, DSpace Items are represented as MPEG-21 DIDL objects. These DIDL objects are XML documents that wrap both the Dublin Core metadata that describes the DSpace Item and its actual bit streams. A bit streams is provided inline in the DIDL object in a base64 encoded manner, and/or by means of a pointer to the bit stream. The DSpace DIDL plug-in exposes DIDL objects via the metadataPrefix didl.

The module does not deal with special characters and purposely skips dissemination of the license.txt file awaiting a better understanidng on how to map DSpace rights information to MPEG21-DIDL.


This software is considered experimental. It was produced by the Digital Library Research & Prototyping Team of the Research Library of the Los Alamos National Laboratory. It is, however, not officially endorsed neither by the Los Alamos National Laboratory or by the DSpace community. No guarantees implicit or explicit nor any form support are guaranteed. Feedback should be provided via the SourceForge Forums.

_Version History

  • Version alpha 1 released 03-02-2004
    • Initial Version that allowed DSpace 1, 1.1 system to stream DIDL objects as responses to OAI-PMH requests
    • This version implement a version of DIDL objects that is no longer supported
    • This version should not continue to be used, please upgrade to the latest release
    • You may still download the source code to proceed with the installation of the plug-in here
  • Version alpha 2 released 09-21-2004
    • Version compatible with DSpace v. 1.2 and above only
    • Version supports revised version of the DIDL format for representing complex objects.
    • Version allows for the inclusion of didlmaxresponse parameter to determine the maximum size of the bit streams to be provided in a base64 encoded manner. Files bigger than the specified value are passed by reference to reduce bandwidth and resource strain on the repository.
    • Version allows the administrator to set didlmaxresponse to 0 in order to always provide bit streams by reference.

_Latest Release

_Installation Instructions

Installation procedure is as follows:

To install the plug-in you need the following steps ( prior knowledge on the ant and ant update procedure may be obtained in the DSpace installation documents available at http://www.dspace.org):

  1. copy our did directory to <dspace source>/src/org/dspace/app/oai
  2. copy the file DIDLCroswalk.java to <dspace source>/src/org/dspace/app/oai/
  3. modify your file <dspace directory>/config/dspace.cfg
  4. add the following lines:
    1. #Max response size for DIDL
    2. dspace.didlmaxresponse = 0
      <this is the maximum size in bytes of the files you wish to enclose Base64 encoded in your responses, remember that the base64 encoding process uses a lot of memory we recommend at most 200000 for answers of 30 records each on a 1 Gigabyte machine. We are actively working with OAI-CAT and DSpace to change to a streaming model and get rid of this restriction. Also please remember to allocate plenty of memory, at least 512 MB to your tomcat>
  5. (optional) DSpace uses 100 records as the limit for the oai responses you can alter this by changing the file: <dspace source>/src/org/dspace/app/oai/DSpaceOAICatalog.java . And modify the declaration: private final int MAX_RECORDS = 100 to private final int MAX_RECORDS = 30.
  6. execute ant on <dspace source>
  7. execute ant -Dconfig=<dspace directory>/config/dspace.cfg update
  8. stop tomcat
  9. delete the dspace, dspace-oai, dspace.war, dspace-oai.war from your <jakarta home>/webapps/ and copy dspace.war and dspace-oai.war from <dspace source>/build/ to <jakarta home>/webapps/
  10. modify your oaicat.properties files in /dspace/config and add a last line that says : Crosswalks.didl=org.dspace.app.oai.DIDLCrosswalk
    (Dspace advices changing the <dspace source>/config/oaicat.properties instead and then follow the install config files procedure . either way should work)

Contact: Henry Jerez
Los Alamos National Laboratory
Research Library - Digital Library Research & Prototyping Team
hjerez@lanl.gov . Please provide feedback via the SourceForge Forums.
Version:Alpha 2
Date: 2004/09/21