At 07:00 14-11-2002 -0500, Ray denenberg wrote:
>From: "Sebastian Hammer" <[log in to unmask]>
> > In the example
> > above, the last parenthesised expression uses the prefix "a" without
> > defining a linkage. Without any a priori, out-of-band agreements about
>"a",
> > I'd say the above is an error.
>
>Or it could be that "a" is assigned in explain. My point is, I don't want to
>have to include these complicated rules in the cql spec.
An association given by explain would count as an a priori, out-of-band
agreement in my book. I was assuming that "bath" and "dc" would also be
assigned by default to simplify basic applications, right?
>Is the idea to include one or more declarations up front, optional
>declarations attached to any given search clause which overide those up
>front, and then include rules for precedence/inherritance?
There's three levels I can see, in terms of precedence (I see no call to
bring in fancy words like inheritance). First, there's any global
assignments that may have been made by the SRW maintenance body. Second is
any assignments made in Explain (which by the way serve the primary purpose
of telling the client what index/qualifier sets are available -- not just
the shorthand assignments). Third level is any assignments made in CQL,
which can themselves be multi-level, with the very simple rule that the
inner-most assignment always wins the day in terms of precedence.
Ray, this problem is thorny whether we choose to resolve it now or not. If
we don't do this, you're either *forcing* all implementations to retrieve
Explain records, which then becomes equivalent to an Init service except
it's carried on a different protocol; and worse, without a session, the
information it provides has an unclear scope. This is terrible engineering,
and it *will* be a turn-off to those people who might approach SRW because
it is 'easy' rather than just because it has Microsoft marketing behind it.
Our clear experience from ZOOM was that your formal definition can be ever
so pretty -- but what *really* sells the cookie is the "hello-world"
example on page one of the tutorial that makes it clear that this really
*is* easy. Programmers are inherently lazy (if they weren't, they would
have a different job).
The other option will be a central registry that you will have to maintain
at the LoC until we fix this problem. This seems like a bad road to head
down for its own reasons.
The last 'option', if you want to call it that, is to say to people: "Guys,
just define your own shorthand names, we don't care". But this seems like a
really weird option, because if this group did not care about
interoperability why would we be having this exchange in the first place?
--Sebastian
--
Sebastian Hammer, Index Data <http://www.indexdata.dk/>
Ph: +45 3341 0100, Fax: +45 3341 0101
|