Issue raised by: Pieter Van Lierop in Paris
Synopsis:
If a search results in 0 records found, the SearchResponse indicates a
searchStatus success. Must a successful search result in the creation of
a resultSet? May a server choose to create a resultSet only if at least
one record matching the search criteria has been found?
Response:
In the abstract a successful search results in the creation of a
resultSet. As a practical matter, when a server creates a resultSet only
if at least one record matching the search criteria has been found, this
behavior cannot be deemed a protocol violation. It is a well- and
long-established principle that a server may unilaterally delete a
result set at any time for no specified reason; and when doing so, the
next time that a client references that result set (via present, or as
an operand in a search) the server may be polite, and return a
diagnostic to the effect that "the result set no longer exists because
it was unilaterally deleted", however, the server is under no obligation
to do so, it may simply take the position that the result set never
existed and return a diagnostic to the effect "result set does not
exist". Therefore, in effect what this means is that if the server never
did create the result set, it is not violating the Z39.50 protocol.
Status: Approved (8/97)
Library
of Congress
(10/22/97)