The Open Archives Initiative Protocol for Metadata Harvesting
Changes from OAI-PMH 1.1 to OAI-PMH 2.0

Protocol Version 2.0 of 2002-06-14
Document Version 2002/06/09T16:43:00Z

http://www.openarchives.org/OAI/migration.htm

Editors

The OAI Executive:
Carl Lagoze <lagoze@cs.cornell.edu> -- Cornell University - Computer Science
Herbert Van de Sompel <hvdsomp@yahoo.com> -- Los Alamos National Laboratory - Research Library

From the OAI Technical Committee:
Michael Nelson <m.l.nelson@larc.nasa.gov> -- NASA - Langley Research Center
Simeon Warner <simeon@cs.cornell.edu> -- Cornell University - Computer Science

Table of Contents

0. Introduction to this Annotation Document
1. Introduction

2. Definitions and Concepts
    2.1. Harvester
    2.2. Repository
    2.3. Item
    2.4. Unique Identifier
    2.5. Record
    2.6. Set
    2.7. Selective Harvesting
        2.7.1 Selective Harvesting and Datestamps
        2.7.2 Selective Harvesting and Sets
3. Protocol Features
    3.1. HTTP Embedding of OAI-PMH requests
        3.1.1. HTTP Request Format
        3.1.2. HTTP Response Format
        3.1.3. Response Compression
    3.2. XML Response Format
        3.2.1. XML Schema for Validating Responses to OAI-PMH Requests
    3.3. UTCdatetime
        3.3.1. UTCdatetime in Protocol Requests
        3.3.2. UTCdatetime in Protocol Responses
    3.4. metadataPrefix and Metadata Schema
    3.5. Flow Control
        3.5.1 Idempotency of resumptionTokens
    3.6. Error and Exception Conditions
4. Protocol Requests and Responses
    4.1. GetRecord
    4.2. Identify
    4.3. ListIdentifiers
    4.4. ListMetadataFormats
    4.5. ListRecords
    4.6. ListSets
5. Dublin Core
6. Implementation Guidelines
Acknowledgements
Document History

0. Introduction to this Annotation Document

This document is intended as an accompanying document to the specification of the Open Archives Initiative Protocol for Metadata Harvesting (referred to as the OAI-PMH in the remainder of this document).  The purpose is to assist implementers migrating from OAI-PMH 1.1 to OAI-PMH 2.0.  This document is expressly not intended as a standalone document, nor is it intended for use by new implementers who have no concerns with migration issues.

The organization of the document, except for this section, exactly parallels the structure of the OAI-PMH specification, thus making it easy for readers to move back and forth between the two documents.  Each section is organized as two lists:

  1. textual changes - describing changes that were made to the specification for the sake of clarity or changes in terminology. 
  2. functional changes - describing changes that were made to the protocol rules.

For the sake of brevity, the respective list only appears if necessary.

1. Introduction

Textual Changes

2. Definitions and Concepts

2.1 Harvester

Textual Changes

2.2 Repository

Textual Changes

2.3 Item

Textual Changes

2.4 Unique Identifier

Textual Changes

2.5 Record

Textual Changes

Functional Changes

2.6 Set

Textual Changes

Functional Changes

2.7 Selective Harvesting

Textual Changes

2.7.1 Selective Harvesting and Datestamps

Textual Changes

Functional Changes

2.7.2 SelectiveHarvestingandSets

Textual Changes

3.0 Protocol Features

3.1 HTTP embedding of OAI-PMH requests

Textual Changes

3.1.1 HTTP Request Format

Textual Changes

Functional Changes

3.1.1.1 Encoding an OAI-PMH request in a URL for an HTTP GET

Textual Changes

3.1.1.2 Encoding an OAI-PMH request in an HTTP POST

Textual Changes

3.1.1.3 Encoding of special characters in keyword arguments of OAI-PMH requests

Textual Changes

3.1.2 HTTP Response Format

Textual Changes

3.1.2.1 Content-Type

Textual Changes

3.1.2.2 Status-Code

Textual Changes

Functional Changes

3.1.3 Response Compression

Textual Changes

Functional Changes

3.2. XML Response Format

Textual Changes

Functional Changes

3.2.1 XML Schema for Validating Responses to OAI-PMH Requests

Textual Changes

Functional Changes

3.3 UTCdatetime

Textual Changes

Functional Changes

3.3.1 UTCdatetime in Protocol Requests

Textual Changes

Functional Changes

3.3.2 UTCdatetime in Protocol Responses

Textual Changes

Functional Changes

3.4 metadataPrefix and Metadata Schema

Textual Changes

Functional Changes

3.5 Flow Control

Textual Changes

Functional Changes

3.5.1 Idempotency of resumptionTokens

Textual Changes

Functional Changes

3.6 Error Conditions

Textual Changes

Functional Changes

4. Protocol Requests and Responses

Textual Changes

4.1. GetRecord

Textual Changes

Functional Changes

4.2. Identify

Textual Changes

Functional Changes

4.3. ListIdentifiers

Textual Changes

Functional Changes

4.4. ListMetadataFormats

Textual Changes

Functional Changes

4.5. ListRecords

Textual Changes

Functional Changes

4.6. ListSets

Textual Changes

Functional Changes

5. Dublin Core

Textual Changes

Functional Changes

6. Implementation Guidelines

Textual Changes

Acknowledgements

Support for the development of the OAI-PMH and for other Open Archives Initiative activities comes from the Digital Library Federation, the Coalition for Networked Information, and from the National Science Foundation through Grant No. IIS-9817416.

Document History

2002-06-14: Release of this document, combined with the release of OAI-PMH version 2.0.