Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Provides support for an Islandora site to be visible via the Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH).
XSLT PHP

This branch is 9 commits ahead of adam-vessey:7.x

Failed to load latest commit information.
build Doxyfile fix
includes get connection directly instead of loading object
tests more error tests yes
transforms remove customizations for self transforms, add in hook so client modu…
.travis.yml Address ISLANDORA-1023
LICENSE.txt Address ISLANDORA-1104
README.md Address ISLANDORA-969
build.xml sed fix
islandora_oai.api.php Change hook structure a smidge.
islandora_oai.info
islandora_oai.install Default value missing, delete all the vars.
islandora_oai.module Make OAI's implementation become generic and overridable.

README.md

Islandora OAI Build Status

Introduction

This module provides an implementation the Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH) for Islandora fedora repository with a solr index. By implementing the islanodra_oa module, you can expose content (its metadata) as an OAI-PMH repository. It will then be accessible by OAI harvesters For further OAI documentation. For more info, please see this link.

With this module you can:

  • Receive OAI-PMH request of service providers in form of HTTP request (GET or POST)
  • Handle the OAI-PMH request
  • Respond to OAI-PMH request in form of HTTP response (XML) to the service provider

Requirements

This module requires the following modules/libraries:

Installation

Install as usual, see this for further information.

Configuration

Configure the basic details of the repository in Administration » Islandora » Islandora OAI (admin/islandora/tools/islandora-oai).

Configuration

After you have exposed content types and some fields, your repository is available at /oai2

Some example requests are as follows:

  • */oai2?verb=Identify
  • */oai2?verb=ListMetadataFormats
  • */oai2?verb=ListIdentifiers&metadataPrefix=oai_dc
  • */oai2?verb=GetRecord&metadataPrefix=oai_dc&identifier=PID
  • */oai2?verb=ListRecords&metadataPrefix=oai_dc

Services like WorldCat expect links back to the object such as a Handle URL. If your metadata doesn't have this there are two approaches that can be used. Self transforming XSLTs can be used to add specific elements tailored to individual needs. However, there is options in configuration to append on URL values to the XML output of OAI. Each metadata prefix has an individual set of configuration. If selected, a user can define where the object URL will get appended in the output returned.

Similarily, OCLC's Digital Collection Gateway can take advatange of thumbnail URLs for rendering. This option is only currently available for oai_dc requests. If selected, a URL to the object's thumbnail will be added as a dc:identifier.thumbnail if the object has a thumbnail.

If existing content has already been harvested and/or the url and thumbnail are not mapping in Digital Collection Gateway, you will need to map those manually in the 'Metadata Map' for a given collection/set.

Customization

By default the vanilla islandora_oai module provides a very basic output. It is possible to add additional content to the description field of the repository. This includes pointing at other harvesters and repositories, branding information etc. An example of how to implement these can be referenced in the 6.x version of the module.

Notes

The original 6.x version of this module was based off of the OAI2ForCCK module located here.

The responses generated by this module have been validated against Open Archives' Validation.

Troubleshooting/Issues

Having problems or solved a problem? Check out the Islandora google groups for a solution.

Maintainers/Sponsors

Current maintainers:

Development

If you would like to contribute to this module, please check out our helpful Documentation for Developers info, as well as our Developers section on the Islandora.ca site.

License

GPLv3

Something went wrong with that request. Please try again.