DRMC

72days since
Next DRMC Meeting

OAI-PMH

Interoperability through Metadata Exchange
The Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH) is a low-barrier mechanism for repository interoperability. Data Providers are repositories that expose structured metadata via OAI-PMH. Service Providers then make OAI-PMH service requests to harvest that metadata. OAI-PMH is a set of six verbs or services that are invoked within HTTP.


The DRC includes Dublin Core, Mets, and RDF OAI server functionality, allowing worldwide sharing of metadata resources.
Of central importance is the 'reduction' or 'dumbing down' or 'unqualifying' of Dublin Core metadata: collapsing the element qualifiers (e.g all photographers and authors and editors getting lumped into the generic dc.contributor).
The default set of OAI formats supported by the DRC are flat oai_dc, rdf, and mets, but there's nothing stopping us from adding additional, qualified elements to the oai crosswalks in the [dspace installation]/configure/crosswalks directory.

I've created a quick-and-dirty test of a new, Qualified Dublin Core OAI-PMH schema.
The majority of elements are still mapped to their unqualified terms, but as a test, you should see dc.contributor.author in the following set of records:

http://drcdev.ohiolink.edu/oai/request?verb=ListRecords&set=hdl_123456789_96&metadataPrefix=qdc (note the new, qdc prefix)

So, instead of simplifying dc.contributor.author into dc.contributor, I've told the OAI server to leave the item in its qualified state. There doesn't seem to be anything preventing us from doing this will most if not all schema fields.

Unqualified:
dc.contributor.author = <dc:contributor/>

Qualified:
dc.contributor.author = <dc:contributor.author />

DSpace OAI-PMH wiki entry: http://wiki.dspace.org/index.php/Use_the_OAI-PMH_interface

I'd also like to give you examples of the six different request types you can use with your own instances to see the sort of results that OAI-PHM is currently serving up.
(http://www.oaforum.org/tutorial/english/page3.htm#section6)

Identify -- Provide a description of the archive
http://[your.drc.instance.edu]/oai/request?verb=Identify

ListMetadataFormats -- Return the list of available metadata formats
http://[your.drc.instance.edu]/oai/request?verb=ListMetadataFormats

ListSets -- Display all available collections
http://[your.drc.instance.edu]/oai/request?verb=ListSets

ListIdentifiers -- Returns a list of item headers, their timestamp and owning collection
http://[your.drc.instance.edu]/oai/request?verb=ListIdentifiers&metadataPrefix=oai_dc

ListRecords -- Harvest actual records
http://[your.drc.instance.edu]/oai/request?verb=ListRecords&metadataPrefix=oai_dc

GetRecord -- Harvest an individual record
(And since this is item-specific, I'll leave it for your own investigation.)

Lastly, there is a very nice OAI harvesting tool to check out, the RDFizer. It uses a relatively simple XML structure to map incoming metadata to whatever schema (origianally RDF) you implement.
http://simile.mit.edu/wiki/OAI-PMH_RDFizer









Attachments (2)

  • QDC.properties - on Oct 2, 2009 12:02 PM by John Davison (version 1)
    4k Download
  • sample-crosswalk-DIM2DC.xsl - on Oct 2, 2009 12:02 PM by John Davison (version 1)
    2k Download