Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Dependencies

Note

Besides installing the Islandora Solr modules, you will also need to correctly configure Solr and GSearch in order for Islandora OAI to work. The OAI module passes information to metadata harvesters based on results it finds from your Solr index; if Solr is not properly configured, OAI won't function either.

...

Configuration options for the Islandora OAI module can be found at http://path.to.your.site/admin/islandora/tools/islandora-oai , and include the following options:

...

  • Repository Name - The name that harvesters will attach to metadata pulled from your repository.
  • The path of the Repository - The URL that harvesters will make requests at.
  • Repository unique identifier - The middle section of the identifier used when metadata harvesters pass the identifier= key. With this in place, an identifier for each of your objects' metadata will be generated as oai:unique_identifier:namespace_pid.
  • Admin Email - An optional email address to be attached to harvested metadata
  • Maximum Response Size - The maximum number of records that will be issued per response. If the number of records requested exceeds this number, Islandora OAI will also issue a 'resumption token', which the harvester can use to issue another request from the point they stopped at. This method is used to control flow and prevent servers from diverting too much resources to metadata harvesters.
  • Expiration Time - The amount of time, in seconds, before a resumption token should expire.
  • OAI Request Handlers - Handlers available to be configured

Image Added

If you select "configure" you see the following screens.

  • Solr date field - A datestamp to be appended to the metadata via the Solr index.
  • Solr RELS-EXT collection field - Fields entered here establish the object relationship of metadata to be passed on to the harvester.
  • Solr XACML role field - The site's Solr fields defining viewing permissions.
  • Solr hasModel field - The site's Solr field defining an object's content model.
  • Exclude Content Models - A list of content models, defined by their PID, to exclude from harvests.

Image Removed

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

If the XACML module is present you will need to configure the rels.isViewableBy fields in the admin page such that the OAI requests respect these object restrictions.

Image Added

Below this is the "Metadata Format" section:

Metadata Format

This section allows you to configure the settings for the OAI-PMH'smetadata_prefix verb; Islandora uses XSL files to define the method for transforming your site's metadata datastreams into a format compatible with the OAI-PMH. Islandora OAI comes with two XSL files; they convert the MODS datastream of an object to either Electronic Thesis and Dissertation Metadata Standard format or Dublin Core format, which then can be served up to a harvester.

  • Metadata Format - The metadata format you would like to use. This will change the next three fields.
  • Metadata Prefix - The default variable for the the metadata_prefix verb verb.
  • Metadata Namespace - The URL that contains XSD files defining the Metadata Format
  • Schema Location - The actual XSD file in the Metadata Namespace that defines the Metadata Format.

Transformations - This section allows you to configure the way Islandora converts your metadata datastreams into a format compatible with the OAI-PMH.

  • Metadata Datastream ID - The datastream ID where object metadata is stored (MODS by default).
  • File to use for transforming ______ - The XSL file used to convert that datastream into a metadata format OAI will recognize and use.
  • Upload a file - If you want to run custom conversions from a different datastream or to a different Metadata Format, you can upload these here.

Image Added

 

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.

If the XACML module is present you will need to configure the rels.isViewableBy fields in the admin page such that the OAI requests respect these object restrictions.

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

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.

...