OAI Icon
Open Archives Initiative
Protocol for Metadata Harvesting
Open Archives Initiative -> PMH -> Tools -> PMH Tools

The following table contains links to tools implemented by members of the Open Archives Initiative community. These tools are made available without guarantee as to their correctness. Questions about each tool should be directed to the individual implementer. All tools support the OAI-PMH v2.0, a few include legacy support for v1.0 and 1.1 and this is noted in the description.




Arc source Old Dominion University Arc is released under the NCSA Open Source License. Arc is a federated search service based on OAI-PMH. It includes a harvester, a search engine together with a simple search interface, and an OAI-PMH layer over harvested metadata. Arc can be configured for a specific community, and enhancements and customizations by the community are encouraged. Arc is based on Java Servlet technology and requires JDK1.4, Tomcat 4.0x, and a RDBMS server (tested with Oracle and MySQL).
Archimede Laval University Library Archimede is an open-source software for institutional repositories. It features full text searching, multiplatform support, Web user interface, and more. Archimede fully supports OAI-PMH requests version 2.0.
DSpace HP Labs and MIT Libraries DSpace is an open source digital asset managment software platform that enables institutions to capture and describe digital content. It runs on a variety of hardware platforms and supports OAI-PMH version 2.0.
eprints.org University of Southampton Software to run centralised, discipline-based as well as distributed, institution-based archives of scholarly publications. The software is OAI compliant, i.e. metadata can be harvested from repositories running the software using the OAI metadata harvesting protocol.
Fedora Cornell University An open source digital repository architecture that allows packaging of content and distributed services associated with that content.  Fedora supports OAI-PMH requests on content in the repository.
MARCXML framework Library of Congress A suite of tools, stylesheets, guidelines and XML documents to support MARC21 records in the XML environment. Includes Universitytools to support transformation/migration from oai_marc to MARCXML, including an XML schema for MARC21 records.
MyCoRe MyCoRe community MyCoRe is an open source software solution that provides functionality for institutional repositories and archives. The software is to a great extent adaptable to meet distinct requirements. MyCoRe supports OAI-PMH requests on content in the repositories.
Net::OAI::Harvester Ed Summers Net::OAI::Harvester provides an object-oriented client interface to the data found in OAI-PMH repositories (similar to what LWP::UserAgent does for HTTP).
OAIA University of Southhampton Based on PERL and MySQL, OAIA is a  simple mechanism for providing caching and aggregating of OAI repositories.
OAI Java Implementation for Linux University of Illinois, Urbana-Champaign This is a simple, illustrative implementation of the OAI metadata protocol, using Java. The code is available on Source Forge (http://sourceforge.net/project/showfiles.php?group_id=47963).
OAI Implementation for Windows NT/Windows 2000 University of Illinois, Urbana-Champaign This is a simple, illustrative implementation of the OAI metadata protocol, using Microsoft Windows NT server technologies. The code is available on Source Forge (http://sourceforge.net/project/showfiles.php?group_id=47963
OAICat OCLC OAICat is a Java Servlet web application providing an OAI-PMH v2.0 repository framework. The framework can be customized to work with arbitrary data repositories by implementing some Java interfaces. A demonstration implementation is available for download on the OAICat home page.
OAI-PMH-Harvester-for-ObjC National Documentation Center, Greece A wrapper over OAI-PMH written in objective C that is used mostly in the iOS development.
oai-perl library University of Southampton A library of PERL language classes that allow the rapid deployment of an OAI compatible interface to an existing web server/database
PEAR::OAI ZZ/OSS Information Networking A Perl implementation of the OAI-PMH Data Provider which is a PHP class library based on the PEAR classes.
OAI-PMH Pack Infrae Infrae has extended Silva so it allows users to browse and search harvested metadata, further enriching the extensive feature-set of this open source CMS. An organization that uses Silva can thus easily become an OAI-PMH Service Provider.

In the process, Infrae also developed a module for accessing OAI-PMH compliant repositories in Python, and developed a sophisticated harvesting and indexing system for using harvested metadata in Zope. These reusable components are designed to be building blocks for other Python or Zope-based applications.
PEAR::OAI ZZ/OSS Information Networking A Perl implementation of the OAI-PMH Data Provider which is a PHP class library based on the PEAR classes.
Perl Harvester Virginia Tech. Object-oriented harvester class with support for OAI-PMH v1.0, v1.1, and v2.0. Includes sample code to illustrate usage.
PHP OAI Data Provider University of Oldenburg This implementation completely complies to OAI-PMH 2.0, including the support of on-the-fly output compression which may significantly reduce the amount of data being transfered.
Rapid Visual OAI Tool Old Dominion University Rapid Visual OAI Tool (RVOT) can be used to graphically construct a OAI-PMH repository from a collection of files. The records in the original collection can be in any one of the acceptable formats. The formats currently supported are RFC1807, Marc subset & COSATI formats. RVOT helps to define the mapping visually from a native format to oai_dc format, and once this is done the tool can respond to OAI-PMH requests. The tool is self-contained; it comes with a lightweight http server and OAI-PMH request handler and is written in Java. The design of RVOT is such that it can be easily extended to support other metadata formats.
Static Repository Gateway LANL An implementation of a static repository gateway that complies with the specification at http://www.openarchives.org/OAI/2.0/guidelines-static-repository.htm
utf8conditioner Cornell University This is a small C program that will either check or 'fix' a UTF-8 byte stream. It was designed to be used within an OAI harvester to attempt to remove bad codes from supposedly UTF-8 byte streams so that they can then be parsed using a standard XML parser which would otherwise fail.
VTOAI OAI-PMH Perl Implementation Virginia Tech This toolkit implements the skeleton of the OAI-PMH v2.0 in an object-oriented fashion, thus hiding the details of the protocol from code that is derived from the predefined class.
XMLFile v2.2 University of Cape Town This is an OAI-PMH data provider module that operates over a set of XML files that contain the metadata. It is meant to require a minimal of effort while retaining all the flexibility of the OAI protocol.
ZMARCO University of Illinois, Urbana-Champaign ZMARCO is an Open Archive Initiative Protocol for Metadata Harvesting (OAI-PMH) 2.0 compliant data provider. The 'Z' in ZMARCO stands for Z39.50; 'MARC' stands for MAchine-Readable Cataloging; and the 'O' stands for OAI, as in the Open Archives Inititive. ZMARCO allows MARC records which are already available through a Z39.50 server to relatively easily be made available via the OAI-PMH.