I'm trying to recall whether we said anything about returning diagnostics with records.
i.e. in Theo's case he could return his captioned records but also a diagnostic to the effect that XPath isn't supported.
ditto from XML versus escaped - i.e. return what you can but also return an error diagnostic.
in our blasted nail example - this would be akin to the seller handing over a bag of size six nails and saying "we have no size 5 will these do?"
Personally, I think I'd prefer to get a diagnostic xor what I asked for.
We can't however, tag a record with both a record data and a surrogate diagnostic (e.g. the seller couldn't hand over a bag of size five nails with one size six nail in it - with a bright yellow luminous flashing tag attached to the size size nail proclaiming in larger letter "we ran out of size fives - will this size 6 do?")
P.S. A little later, an irate buyer with his bag of nails runs into the shop with a shotgun - et voila, no more silly hardware examples ;-)
From: Z39.50 Next-Generation Initiative on behalf of Robert Sanderson
Sent: Wed 06/08/2003 16:24
To: [log in to unmask]
Subject: Re: Betr.: Re: xPath in searchRequest
On Wed, 6 Aug 2003, Theo van Veen wrote:
> Rob, I understand that you propose to just return a diagnostic saying "I
> cannot do this", but I should have looked in the explain record to find
> out and try to find a known schema or just ignore this database.
Yes. Exactly. That's why we have explain and diagnostics, right?
> I prefer the possibility of returning a diagnostic saying "I cannot do
> this" and returning unsollicited short records (for which we have to
> define a schema), so the user is informed about the existance of these
> records and is even allowed to request the native XML records or perhaps
> with a servers default stylesheet reference.
The client is informed of the existence of the records by the number of
records in the result set parameter in the response.
Much like unsollicited email or flyers in my letter box, unsollicted
records are likely to be completely useless to me as they're not something
I've asked for.
With records you can ignore them if they're not useful, but there are
other situations that are just downright dangerous... I ask for string
escaped records and you only support XML records... my
(hypothetical) client then blows up completely when it gets back XML where
it expects a string.
The client asks to sort by publication date. You can't do that so instead
sort by date of acquisition as that's kind of close. Now it looks like
it's sorted as most acquisitions are for recent material, but in fact it's
And how do you say, in a machine understandable way, 'I didn't do what you
asked, I instead sorted by acquisition date' with a /raftload/ of
diagnostics for all possible things that a server could do?
The client asks for 20 records. You return 25. The display logic gets
completely messed up.
Client asks for authors that are exactly 'John Smith'. You return matches
for John Smithers and Joan Smithy as they're kind of right. The results
are simply -wrong-.
> In terms of your "nail-example" according to your proposal the seller
> would say "no we do not have number 5" and according to my proposal the
> seller would say "we do not have number 5 but we have number 6".
At risk of turning Matthew irate at the continued example:
You looked at their price list (explain information). It says that there
are nails (record schema) and you have them in different sizes, and to ask
for which size (xPath support). You ask for specifically number 5 nails
(xpath in record schema). Rather than saying 'We don't have number 5
nails' and waiting to see what you'd like instead, the shop just gives you
something you might want but might not want (alternate record schema
which maybe has nothing to do with your xpath request at all) Perhaps the
server gives you screws or bolts, which are similar to nails but
are in fact completely useless (no handler for the record type).
If I wanted lowest common denominator (nails of any size/simple DC), I
would have asked for it.
,'/:. Dr Robert Sanderson ([log in to unmask])
,'--/::(@)::. Special Collections and Archives, extension 3142
,'---/::::::::::. Nebmedes: telnet: nebmedes.o-r-g.org 7777
____/:::::::::::::. WWW: http://nebmedes.o-r-g.org:8000/
I L L U M I N A T I