[OAI-implementers] sets - metadataPrefix relationship

Thomas G. Habing thabing at uiuc.edu
Mon Dec 4 13:47:10 EST 2006


Hi,

The definition of set from the specification is:

"A set is an optional construct for grouping _items_ for the purpose of 
selective harvesting."

I've deliberately emphasized the word _item_ which also has a specific 
meaning in the protocol:

"An item is a constituent of a repository from which metadata about a 
resource can be disseminated."

This is to be differentiated from records:

"A record is metadata expressed in a single format. A record is returned 
in an XML-encoded byte stream in response to an OAI-PMH request for 
metadata from an item."

In other words a set is a grouping of items and not a grouping of 
records (items represented in a specific metadata format).

The protocol also requires every item to have a corresponding oai_dc 
record.

This implies to me that a request like:

   ?verb=ListRecords&set=A&metadataPrefix=oai_dc

must always return records for all the items belonging to that set, 
assuming that set A is not empty.  For example, if set A has 10 items 
then this request must always return all 10 records.

A request for some other metadata format could return all the same items 
in the requested format, no items, or a subset of the items that belong 
to that set, depending on whether or which of those items are available 
in the other format, for example:

   ?verb=ListRecords&set=A&metadataPrefix=marcxml

might return 10 records assuming that all the records have mappings to 
marcxml.  It might just return 5 records because only half of the items 
in set A have a mapping to marcxml, and the other half do not.  It might 
also return no records with an error of noRecordsMatch or 
cannotDisseminateFormat.  If there are items in the repository that can 
be disseminated as marcxml, just not for this set, you should use 
noRecordsMatch.  However, if the repository does not support marcxml at 
all for any of its items, then use cannotDisseminateFormat.

Hope this helps,
	Tom

Irina Dijour wrote:
>  
> 
> Hi,
> 
>  
> 
> I have a question concerning sets – metadataPrefix relationship.
> 
> Is it permitted by the protocol to “attach” metadataPrefix to set?
> 
>  
> 
> For example, is the following situation is valid:
> 
> I define two sets  A and B. All the records from my repository belong to 
> both sets.
> 
> Set A “contains” records in marcxml. Set B “contains” records in oai_dc.
> 
> ListSets response contains 2 sets: A and B
> 
> ListMetadataFormats reponse contains 2 formats: marxml and oai_dc.
> 
> ListRecords request with set=A, metadataPrefix=marcxml – results in list 
> of records
> 
> ListRecords request with set=A, metadataPrefix=oai_dc – results in error 
> cannotDissemenateFormat
> 
> ListRecords request with set=B, metadataPrefix=marcxml – results in 
> error cannotDissemenateFormat
> 
> ListRecords request with set=B, metadataPrefix=oai_dc – results in list 
> of record
> 
> GetRecord request for any record in my repository both with 
> metadataPrefix=marcxml and with
> 
> metadataPrefix=oai_dc results in the record in corresponding format.
> 
>  
> 
> Sorry if I repeat the question which has been risen several months ago. 
> I see that there was discussion
> 
> on the same matter, but unfortunately I did not find answer on my question.
> 
>  
> 
> Thanks,
> 
> Irina Dijour
> 
> ExLibris Ltd.
> 
> 
> -----------------------------------------------------------------
> This message has been scanned for viruses and
> dangerous content by *Ex Libris Ltd* <http://www.exlibrisgroup.com>, and is
> believed to be clean.
> -----------------------------------------------------------------
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> OAI-implementers mailing list
> List information, archives, preferences and to unsubscribe:
> http://www.openarchives.org/mailman/listinfo/oai-implementers
> 


-- 
Thomas G. Habing
Research Programmer
Grainger Engineering Library Information Center
University of Illinois at Urbana-Champaign



More information about the OAI-implementers mailing list