Support for Single-PDU, Multi-database Searching


Question from: ZIG


Question: Must single-PDU, multi-database searching be supported?
Response:
"Single PDU, multi-database searching" refers to a single Search request that lists multiple databases.

An origin or target may choose not to support single PDU, multi-database searching. An origin may simply choose not to send Search PDUs that list more than a single database. A target, upon receipt of a single-PDU, multi-database search request may simply fail the search (bib-1 diagnostic 111: "Too many databases specified" ; with an addinfo "maximum value" 1 supplied).

Furthermore, a target who chooses to support single PDU, multi-database search, may limit such support to any specific combinations it chooses. For example suppose a target provides 100 databases, named "1", "2", ... , "100". It may declare that each database may be searched singly, and databases "1" and "2" may be searched together. (It may declare this via Explain, or, more dynamically, when it receives a search with an unsupported combination of databases, it may fail the search with bib-1 diagnostic 23: "Specified combination of databases not supported".)

Some targets finesse the issue by defining virtual databases corresponding to supported combinations rather than support single-PDU, multi-database searching. This is a valid approach, but not always practical. If you have, say, 3 real databases (A, B, and C); then if you allow all possible combinations, you expose 7 virtual databases (A, B, C, AB, AC, BC, and ABC). But if you have as few as, say, 15 databases and you want to allow all possible combinations you would have over 32,000 virtual databases. In this case it may be simpler to allow access to 15 databases and support single-PDU, multiple-database searching, than to support 32,000 (virtual) databases.


Status: Approved (3/99)
Library of Congress