In our application's built-in search engine, the search process includes 3 
1. The user executes a query
2. A "preview" of the results is presented, containing the items' titles, 
authors etc.
3. When an item is selected, the complete record is presented to the user.
This way, the system does the relatively expensive task of gathering the 
complete item record only upon demand.

The z39.50 protocol consist of only two steps: searching and getting a list 
of complete records. Due to the way our database is designed, converting our 
native format to marcxml, for instance, requires an export operation, which 
is quite heavy. Having to go through with that before the user can even be 
sure the results are indeed what she was looking for could be quite a 

The only solution I could think of is supplying a non-standard record schema 
in which only a few selected fields would be returned. Then, if the user 
would like to get the complete records, one of the standard schemas would be 
used. Does this comply with the spirit of z39? will the average client 
understand the idea? is there a better way?