OAI-PMH v2.0 Compliance
1. Mandatory Verbs Implementation
- Identify: Returns repository information and policies
- ListMetadataFormats: Returns available metadata formats
- ListSets: Returns available sets (herbaria)
- ListIdentifiers: Returns record headers with optional filtering
- ListRecords: Returns complete records with optional filtering
- GetRecord: Returns a single record by identifier
2. Metadata Format Support
Dublin Core (oai_dc) - Obligatory Format
- Prefix:
oai_dc - Namespace:
http://www.openarchives.org/OAI/2.0/oai_dc/ - Schema:
http://www.openarchives.org/OAI/2.0/oai_dc.xsd - All 15 Dublin Core elements mapped:
- dc:title: Specimen identifier as title
- dc:creator: Herbarium name
- dc:subject: Classification terms (botanical collection, digital image)
- dc:description: Technical details and image information
- dc:publisher: Herbarium as publisher
- dc:date: Creation and modification dates
- dc:type: Resource type (Image, StillImage)
- dc:format: MIME types (TIFF, JP2)
- dc:identifier: Multiple identifiers (OAI, JACQ PID, specimen ID)
- dc:source: Archive filename
- dc:language: Latin (for botanical specimens)
- dc:relation: IIIF URLs
- dc:coverage: Geographic information
- dc:rights: License information
CCMM Format - Mandatory Format
- Prefix:
ccmm - Namespace:
https://github.com/techlib/CCMM - Schema:
https://techlib.github.io/CCMM/dataset/schema.xsd
3. Sets Implementation
- Sets: Herbaria as natural sets
- setSpec: Herbarium acronym (e.g., “PRC”, “BRNU”)
- setName: Full herbarium name
- Filtering: Records can be filtered by herbarium
4. Resumption Token Implementation
- Token Format: Base64-encoded JSON
- Parameters: Preserves metadataPrefix, from, until, set
- Attributes: cursor, completeListSize when appropriate
- Pagination: Configurable page size (default: 100)
- Expiration: Implicit via parameter validation
API Endpoints
Base URL
https://herbarium.biodiversity.cz/oai-pmh
Supported Verbs
1. Identify
Returns repository information and policies.
GET /oai-pmh?verb=Identify
2. ListMetadataFormats
Lists available metadata formats.
GET /oai-pmh?verb=ListMetadataFormats
3. ListSets
Lists available sets (herbaria).
GET /oai-pmh?verb=ListSets
4. ListIdentifiers
Lists record identifiers with optional filtering.
GET /oai-pmh?verb=ListIdentifiers&metadataPrefix=oai_dc
GET /oai-pmh?verb=ListIdentifiers&metadataPrefix=oai_dc&from=2023-01-01
GET /oai-pmh?verb=ListIdentifiers&metadataPrefix=oai_dc&set=PRC
5. ListRecords
Lists complete records with optional filtering.
GET /oai-pmh?verb=ListRecords&metadataPrefix=oai_dc
GET /oai-pmh?verb=ListRecords&metadataPrefix=oai_dc&from=2023-01-01&until=2023-12-31
6. GetRecord
Retrieves a single record by identifier.
GET /oai-pmh?verb=GetRecord&identifier=oai:domain:photo-123&metadataPrefix=oai_dc