OAI-PMH: Unterschied zwischen den Versionen

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche
K (Comparison between WFS and OAI-PMH)
K
Zeile 1: Zeile 1:
'Open Archives Initiative Protocol for Metadata Harvesting'. This is part of discussion about [[OSGeodata | open source geodata]].
+
'Open Archives Initiative Protocol for Metadata Harvesting'. This is part of discussion about [[OSGeodata | open source geodata]] (OSGeodata).
  
 
We definitively need a [[OSGeodataMetadataModel| metadata information model]] as well as a [[OSGeodataMetadataProtocol| metadata exchange protocol]]!
 
We definitively need a [[OSGeodataMetadataModel| metadata information model]] as well as a [[OSGeodataMetadataProtocol| metadata exchange protocol]]!

Version vom 21. August 2006, 14:29 Uhr

'Open Archives Initiative Protocol for Metadata Harvesting'. This is part of discussion about open source geodata (OSGeodata).

We definitively need a metadata information model as well as a metadata exchange protocol!

Description

OAI-PMH is an metadata exchange protocol of type harvesting procotol as compared to search protocols.

Being an flexible protocol it does not depend on a single information model. The default, unqualified Dublic Core, can be extended or replaced by domain specific information models (see OSGeodataMetadataModel).

  • Leightweight:
    • A low barrier interoperability specification
    • HTTP based, GET / POST requests, XML responses, there for RESTful, XML machinery only as needed.
  • Clear concepts:
    • Designed around metadata harvesting model; no live requests!
    • Metadata about resources, mandates unqualified Dublin Core (oai_dc) as default
    • Not a search protocol! That could be for example enhanced or merged versions of OpenSearch/GeoRSS and SRU/SRW besides WFS.
  • Extendable: Has extension mechanism for more domain specific metadata models, like the tbd OSGeodataMetadataModel
  • Stable: OAI has committed to making subsequent revisions of the protocol backwards compatible.
  • Established: Implemented - among others - by Google, CiteSeer and MSN as well as by dozens of open source tools, like OAICat (Java) or mod_oai (C, installed at 500 sites); see more tools in the Weblinks section below.

There are following alternatives (Remarks: all considered either inappropriate or not established or at least 'painfull' compared to OAI-PMH):

  • Query models:
    • WFS - the OGC thing - being designed for geographic vector data exchange services
    • Z39.50 and SRW - the bibliographic data exchange protocol things (SRW is the more leightweight and 'modern' successor of Z39.50)
  • 'Find and bind':
    • UDDI - the SOAP thing

Discussion

Why not just letting crawlers find XML data (or, why a new protocol at all)?

Commercial web crawlers are estimated to index only approximately 16% of the total "surface web" and the size of the "deep web" [...] is estimated to be up to 550 times as large as the surface web. These problems are due in part to the extremely large scale of the web. To increase efficiency, a number of techniques have been proposed such as more accurately estimating web page creation and updates and more efficient crawling strategies. [...] All of these approaches stem from the fact that http does not provide semantics to allow web servers to answer questions of the form "what resources do you have?" and "what resources have changed since 2004-12-27?" (from: (Nelson and Van de Sompel et al. 2005)).

Why a harvesting protocol?

  • Cross/distributed Searching vs. Harvesting. There are two possible approaches: (from: Implementing the OAI-PMH - an introduction).
    • cross searching multiple archives based on protocol like Z39.50
    • harvesting metadata into one or more 'central' services – bulk move data to the user-interface
    • US digital library experience in this area (e.g. NCSTRL) indicated that cross searching not preferred approach - distributed searching of N nodes viable, but only for small values of N (< 100)
  • Problems distributed searching: (from: Implementing the OAI-PMH - an introduction)
    • Collection description: How do you know which targets to search?
    • Query-language problem: Syntax varies and drifts over time between the various nodes.
    • Rank-merging problem: How do you meaningfully merge multiple result sets?
    • Performance: tends to be limited by slowest target; difficult to build browse interface
  • Ok, what's left to do?
  1. We need an (lightweight) information model for geographic medatata. => See OSGeodata for a discussion.
  2. We need implementations of OAI-PMH data providers. => See steps 1 to 8 in this tutorial. There exist open source tools for many languages (see Weblinks).

Architecture

OAI-PMH uses following denotations of two logical groups of services and uses these for its client/server model (data=server, service=client): (from: Implementing the OAI-PMH - an introduction)

  • Data Providers (Open Archives, Repositories)
    • handle deposit/publishing of resources in archive
    • expose metadata about resources in archive
    • refer to entities who possess data/metadata and are willing to share this with others (internally or externally) via well-defined protocols (e.g. database servers or simple XML files).
    • normally: free access of metadata
    • not necessarily: free access to full texts / resources
  • Service Providers
    • are entities who harvest and store data from Data Providers through OAI interfaces in order to provide higher-level services to users (e.g. search engines)
    • offer single user-interface across all harvested metadata
    • offer (value-added) service on the basis of the metadata
    • may select certain subsets from Data Providers (set hierarchy, date stamp)
    • may enrich metadata

Note: Data provider may also be responsible for human-oriented (i.e. Web) interface to archive both functions may be offered by same 'service'.

OAI-PMH Architecture.png

Comparison between WFS and OAI-PMH

Relative (biased?) comparison

  • OAI-PMH is a simple and strictly RESTful harvesting protocol based on Dublin Core (since 1995) whereas WFS is a query protocol which allows a RESTful or SOAP client to retrieve geospatial data encoded in GML (since 2000).
  • WFS though originated in GIS covers a smaller community than OAI-PMH which today has a larger user base and is supported even by Google and Yahoo!.
  • Both have in common that they can be made (WFS) or are (OAI-PMH) RESTful and both can be profiled to respond an metadata information model (to be defined, see OSGeodataMetadataModel).
  • WFS needs to be profiled (spec. size is ~200 p.) whereas OAI-PMH needs probably to be extended (spec. size is ~50 p.) - so WFS seems more complex and more costly to implement or adapt but much depends on the needs (make sophisticated queries vs. harvesting?) and underlying the architecture (distributed online services vs. local indexing).
  • Both need a metadata information model.


WFS

  • WFS is short for 'Web Feature Service'.
  • Spec. size: About 100 pages plus mandatory reference to Filter spec. of about 40 pages, plus reference to GML 2 (60 pages).
  • Background: A de-facto standard in GIS world owned by OGC
  • Request operations (Basic WFS, read only WFS):
    • GetCapabilities - describe service capabilities;
    • DescribeFeatureType - describe structure of a feature type
    • GetFeature - retrieve feature instances
  • Query:
    • Standard query (c.f. Filter) includes spatial constraints (but no temporal?)
  • Response:
    • Must be GML 2 and may be other XML encodings.
  • Peculiarities:
    • Knows version negotiation (which isn't implemented yet...)
    • Uses URN as unique identifier
  • Availability and outreach of services, tools and (open source) software:
  • Expected changes to spec. (profile or extension):
    • Profile to KVP binding
    • Profile Filter to Boolean and Wildcard matches as well as 'within'
    • ...


OAI-PMH

  • OAI-PMH is short for 'Open Archives Initiative Protocol for Metadata Harvesting'. See OAI-PMH for a short description and architectural diagrams. Note this is not a search protocol - that could be for example enhanced or merged versions of OpenSearch/GeoRSS and SRU/SRW besides WFS.
  • Spec. size: Version 2.0 still is < 50 pages(!)
  • Background: Was initiated by libraries, universities, museums and galleries to 'open access' (OA) free online availability of digital content.
  • Request operations:
    • Identify - describe an archive (similar to WFS' GetCapabilities)
    • ListMetadataFormats - retrieve available metadata formats from archive
    • ListIdentifiers - abbreviated form of ListRecords, retrieving only headers
    • ListRecords - harvest records from a repository (similar to WFS' GetFeature)
    • GetRecord - retrieve individual metadata record from a repository (also similar to WFS' GetFeature)
    • ListSets - retrieve set structure of a repository (optional)
  • Query:
    • Standard query includes temporal constraints (but no spatial yet).
  • Response:
    • Either an encoded error or unqualified Dublin Core XML or another format announced with ListMetadataFormats.
  • Peculiarities:
    • For identifiers URI must be used (similar requirement to WFS).
    • Has no version negotiation (but see operation Identify)
    • Knows incremental update
    • Another spec. was released called 'OAI Static Repository and an OAI Static Repository Gateway'
    • OAI-PMH may respond results in compressed form which is handled at the HTTP-level (how RESTful!)
  • Availability and outreach of services, tools and (open source) software:
    • Open source software see OAI-PMH tools
    • Gateways available from publishing files to others
    • Google reads it as a Sitemaps file (how to submit), Yahoo! and Internet Archive uses it among others.
  • Expected changes to spec. (profile or extension):
    • special treatment of ID's?
    • Need to be extended if spatial constraints are needed here
    • Add version negotiation?
    • ...?

Specifications

For Tools and Demos see Weblinks section below.

OAI-PMH Implementations

In the domain of scholar knowledge dissemination they discuss similar issues like we have here. See e.g. Introduction to the IESR: A Registry of Collections and Services, by Hill and Ann Apps, MIMAS, Univ. of Manchester, 2006. (IESR's Extension to OAI-PMH Dublin Core)

Software and Tools:

Demos and examples:

  • Demo of OAICat - The OAICat Open Source project is a Java Servlet web application providing an OAI-PMH v2.0 repository framework.
  • OAIster - Most often mentioned collection of freely available, previously difficult-to-access, academically-oriented digital resources that are easily searchable by anyone.
  • PKP Open Archives Harvester - Free metadata indexing system developed by the Public Knowledge Project through its federally funded efforts to expand and improve access to research.
  • OJAX Demo - Federated Metasearch Service using Ajax/Lucene


Weblinks