[OAI-implementers] Sets and stuff, OAI 2.0

deridder deridder@cs.utk.edu
Tue, 14 May 2002 17:58:15 -0400 (EDT)

I need to make some decisions here, and would like to hear from
folks more experienced than I, before I do so.

My dilemma relates to 2 things:
 1) in the Migration Document: Set: Textual Changes:
    " If a repository supports sets, the header of a record must
   indicate the set membership of the item from which that record was
 2) some of our records are beginning to be included in multiple sets.

The dilemma is: how to implement the database to return records in a
timely manner, and be scalable.

If I allow a record to be in 0-5 sets, and the set fields are in the
same table as the record fields, 5 selects on the same table are required
to respond to a single ListRecord request with set argument.

If I put the sets in a secondary table, pull out all the identifiers for
a given set (same request), then when I have a request for ListRecords
*without* a set argument, I need to do a select on the set table for each
record returned in the ListRecord response.

Am I missing a plausible option here?
I would be grateful for suggestions.

Maybe I should forget the sets altogether.  For those of you with
harvesters and search engines:  how do you use the repository sets
 (or do you?)
(Oh, and if you can recommend which ListRecord fields you have found
useful, I'd like to hear about that also;  I'd like to standardize my


 --jody (again)

   PGPKey: http://www.cs.utk.edu/~deridder/jd-pgp.txt