Robert Sanderson wrote, on Fri, Sep 23, 2005 at 09:10:56PM +0100:
> >I'm confused about the //explain/serverInfo/database element and its
> >First, the overloaded meaning that:
> > - if it's Z39.50, "database" means the name of the database, but
> > - if it's not Z39.50, "database" *may* mean the url path to the
> >   query script
> Not quite.  If it were being used to describe a non Z39.50, non SRW, non
> OAI database, it might be just an identifier for the database or set of
> records.

Okay, so it's more overloaded than I thought.

> "The database element should contain the name of the Z39.50 database
> which the record describes. For other protocols such as SRW and SRU,
> this element may be used to contain the remainder of the URL to the
> server without any preceeding '/' character."
> Which is slightly ambiguous, granted, but it's hardly a formal standards
> document with MAY and MUST ala w3c :)  Just replace 'may be used to'
> with 'should' (or MUST if you like the w3c style)
<snip />
> You might be interested in the draft of NISO Information Retrieval
> Service Description Specification (aka ZeeRex 2.1):

Seeing that the description is unchanged in that draft formal standards
document, perhaps you might consider splitting the secondary (SRW/U)
context meaning into a distinct optional element "path_info" or somesuch,
with an explanation like:

  "if the path is not at the top level of the domain, then 'path_info'
  must specify the exact path to the service, otherwise it is optional."

I'm not usually one to advocate for adding elements, but in cases like
this, where you're trying to develop something rapid (that should be
rapidly developable, by design!) clarity is king, and this would be
clearer to me, at least.

If such suggestions w/r/to that document aren't welcome on this list
let me know and I'll redirect in the future as appropriate.

> >Second, may the serverInfo element repeat?  If not, and you
> >provide separate paths to both SRU and SRW (say,
> >and, as an example), is the answer to say
> >serverInfo[@protocol='SRW/U'] and then to duplicate the database element
> >with one path for SRU and another for SRW?  Hopefully not. :)
> You can't repeat the serverInfo element.  If you have different
> endpoints which refer to the same collection via different protocols,
> then the solution is to have multiple documents.

Ah, obviously. :)

Thanks again, -Dan

Daniel Chudnov
Yale Center for Medical Informatics
(203) 737-5789