[OAI-implementers] Metadata Formats

John Weatherley jweather@ucar.edu
Thu, 4 Oct 2001 20:06:03 -0600 (MDT)

Using the setSpec is a good suggestion. We've envisioned using the setSpec
to denote each sub-collection where the setSpec hierarchy would be used to
describe sub-collection-specific attributes as opposed to metadataFormats.
If two separate sub-collections are available in the same metadataFormat
but are otherwise unrelated, one could certainly construct another set of
setSpecs to describe this relationship, however this muddies the semantics
of the setSpec.

Another way to look at it is from the harvesters point of view. If I know
I can only handle metatadataFormat oai_dc, and I'm interested in updating
my list of id's against yours, it would be nice to simply request a list
of identifiers of metadataPrefix=oai_dc.

We envision using ListIdentifiers as a way to synch metadata in the case
where records have been deleted. For example, if a record has been
deleted, a call to ListRecords&from=2001-09-17&metadataPrefix=oai_dc is
not guaranteed to reveal this deletion, and this would be the common daily
or weekly harvesting done by our collaborators. In such a case it's
necessary to make a call to ListIdentifiers in order to detect deleted
records in the harvested collection.

Using the setSpec for this is a good suggestion however and it certainly
beats having to use the GetRecords request when all you need are the ids.

Many thanks,

 - John

On Thu, 4 Oct 2001, Simeon Warner wrote:

> On Thu, 4 Oct 2001, John Weatherley wrote:
> > I am implementing an OAI provider for a digital library project that will
> > eventually house and serve several different metadata formats. We would
> > like our collaborators to be able to request a listing of identifiers of
> > records that are available in a given format (not all records will be
> > available in all formats).
> >
> > Currently it appears there is no direct way to make such a query using the
> > protocol (ie there is no option to include the metadataPrefix argument in
> > the ListRecords request). One cumbersome solution might be to make a
> > GetRecords request, then parse out only the identifiers from the return.
> >
> > Can anyone recommend another solution? Is there a possiblity the option to
> > include the metadataPrefix argument in a ListRecords request might be
> > included in future iterations of the protocol?
> I assume in the above you mean ListIdentifiers when you say ListRecords.
> You are correct that there is no way to get a ListIdentifiers request
> to return identifiers of records available in a particular metadata
> format.
> I think that with the current (v1.1) protocol your suggestion of
> doing a ListRecords request (which I assume is what you mean by
> GetRecords) with the required metadataPrefix and then discarding
> all but the identifiers is the easiest way to accomplish what you
> want.
> Regarding the question of whether this facility should be added to the
> protocol, I'm curious to know why you want to be harvest this subset
> of available identifiers without also harvesting the metadata. If
> this is a community specific situation then it might perhaps be best for
> you and your collaborators to define sets corresponding to the
> metadataFormats and then doing ListIdentifiers requests qualified by a
> setSpec.
> Cheers,
> Simeon.
> > John Weatherley
> > Digital Library for Earth System Education (DLESE)