[OAI-implementers] Requesting a part of a record possible with OAI-OMH?

Hussein Suleman hussein@cs.uct.ac.za
Tue, 20 Jan 2004 16:48:09 +0200

hi Joachim

no, i do not believe this can be done with OAI-PMH. at the risk of going 
off on a tangent, let me suggest some solutions ...

maybe what you need is an "extension" or "semantic overload" or a new 
protocol altogether. now, a number of us have played around with 
interesting ways to extend OAI-PMH and we have learnt important lessons, 
many of which may be obvious, but i will try to list anyway:

firstly, look for existing protocols. i dont know any off the top of my 
head but maybe someone else does. search protocols probably wont do the 
trick because it sounds like you want to transfer a specific part of 
each record in the full set.

if you cannot find an existing protocol, do NOT then overload/extend the 
meaning of OAI-PMH! instead, design a completely separate protocol if 
you need to. generally, it is not a good idea to muddy the waters with 
different versions of OAI-PMH, especially if you intend to interoperate 
with other people (what you do wholly within your system is of course a 
different matter).

for example, you could define a small specification called "Part 
Extraction Protocol (PEP?)" as follows:
-- ListRecordParts returns the metadata similarly to OAI-PMH but with 
additional parameters that specify (maybe using XPath) subtrees of the 
metadata records (noting that there will be validation issues)
-- GetRecordPart does the same but with a single record

there is no rule that states a single repository should support only one 
protocol - your repository can then support OAI-PMH on one baseURL and 
"PEP" on another, in just the same way as some current repositories 
support OAI-PMH on one baseURL and SRW on another (for searching).

lastly, adopt current best practices and standards as defined by the OAI 
and Web community. what this means is:
- don't use a different style of record encoding if people already 
understand the OAI style ... i.e., header/metadata/etc
- think about SOAP - it is now a standard so there is no reason why new 
protocols should not use it and there are some benefits to it (like a 
large community of practice)
- be RESTful ... keep the simple things simple

this sounds complicated, but i think we need to get beyond basic 
OAI-PMH. real services need more interesting protocols for components to 
interact and metadata harvesting only gives you, well, whole chunks of 
harvested metadata :)

by now you have probably stopped reading this message, but if not, i 
have one last suggestion: how about an "other_protocol" description 
format for OAI-PMH Identify responses? does anyone else think it will be 
useful to know what other protocols can be used to interact with a data 
collection? for example, OCLC's ETD collection could list:

    <protocol:protocol xmlns:protocol="..." xmlns:dc="...">
       <dc:identifier xsi:type="dcterms:URI">
       <dc:coverage xsi:type="protocol:version">1.0</dc:coverage>

could this possibly be useful for discovery/advertising of services? it 
is somewhat halfway between "friends" and WSDL and might already be done 
- anyone have pointers? or thoughts in general?


Joachim Wackerow wrote:
> Is it possible to offer/request only a part of a record with OAI-PMH?
> For example: exists a way to request only the "dc:title" of an identifier?
> I browsed the open archives web site and found only the verb 
> "GetRecord". In addition to offer or request a whole record, we would 
> like to offer or request only one element of a XML document stored in a 
> record.
> Background:
> Requesting a whole record with DC information is no problem. But we are 
> thinking about using OAI-PMH to offer DDI-structured information on 
> social science surveys. DDI is an extensive description format (in XML) 
> with ca. 300 elements on surveys (http://www.icpsr.umich.edu/DDI/). For 
> some scenarios it would be more effective to offer/request only one 
> element or one element group of the xml document.
> Regards, Achim
> -- 
> ZUMA - Centre for Survey Research and Methodology
> _______________________________________________
> OAI-implementers mailing list
> List information, archives, preferences and to unsubscribe:
> http://oaisrv.nsdl.cornell.edu/mailman/listinfo/oai-implementers

hussein suleman ~ hussein@cs.uct.ac.za ~ http://www.husseinsspace.com