OAI Data Provider Requirements

A new, Fedora-based OAI data provider for use in the IU Digital Library Program must implement the following optional parts of the OAI protocol. See the protocol documentation and implementation guidelines for more information on these features.

Each of the requirements is augmented with information about its support in the Fedora OAI Provider, denoted FOP.

  1. Support for sets, including the potential for a single item to appear in multiple sets
  2. Must support delivery of "deleted" records
  3. Support for multiple metadata formats for a single item
  4. Support for multiple versions of the same metadata format within the repository (i.e., one set in MODS 3.0, one set in MODS 3.1, others in MODS 3.2), but not necessarily multiple versions of the format within a single object
  5. Support for the Repository-level <description> container
  6. Support for the Set-level <setDescription> container
  7. Support for the Record-level <about> container
  8. Must support arbitrarily including/excluding items from the provider.
  9. Configurable set names
  10. Configurable set membership (e.g., don't assume a set is always a DLP collection)
  11. DESIRED: Support for <friends> description container at the repository level.

Open questions

  1. At what level do we need to include/exclude objects? At the collection level only? This affects what kind of flag we use to indicate that an item can be indexed. JLR: For collections that grow over time we may want to have item-level control over whether something is exposed via OAI, to allow for exposure only once it's "ready" (whatever that means).