-<!-- $Id: frontend.xml,v 1.16 2003-02-23 20:40:01 adam Exp $ -->
+<!-- $Id: frontend.xml,v 1.17 2003-04-28 21:02:16 adam Exp $ -->
<chapter id="server"><title>Generic server</title>
<sect1><title>Introduction</title>
<note>
<para>
- The &yaz; server does not provide full SRW functionality.
- However, it provides an adapter for SRW (to Z39.50).
+ The &yaz; server does not support XCQL.
</para>
</note>
</sect1>
</para>
<para>
- This handler is also called when operating in SRW mode - when
- a connection has been made (even though SRW does not offer
+ This handler is also called when operating in SRW/SRU mode - when
+ a connection has been made (even though SRW/SRU does not offer
this service).
</para>
<para>
The <function>bend_search</function> handler is also called when
- the frontend server receives a SRW SearchRetrieveRequest.
- For SRW, a CQL query is usually provided by the client.
+ the frontend server receives a SRW/SRU SearchRetrieveRequest.
+ For SRW/SRU, a CQL query is usually provided by the client.
The CQL query is available as part of <literal>Z_Query</literal>
structure (note that CQL is now part of Z39.50 via an external).
To support CQL in existing implementations that only do Type-1,
<para>
To maintain backwards compatibility, the frontend server
of yaz always assume that error codes are BIB-1 diagnostics.
- For SRW operation, a Bib-1 diagnostic code is mapped to
- SRW diagnostic.
+ For SRW/SRU operation, a Bib-1 diagnostic code is mapped to
+ SRW/SRU diagnostic.
</para>
<synopsis>
int errcode; /* 0==success */
char *errstring; /* system error string or NULL */
int surrogate_flag; /* surrogate diagnostic */
+ char *schema; /* string record schema input/output */
} bend_fetch_rr;
</synopsis>
<para>
The frontend server calls the <function>bend_fetch</function> handler
when it needs database records to fulfill a Z39.50 Search Request, a
- Z39.50 Present Request or a SRW SearchRetrieveRequest.
+ Z39.50 Present Request or a SRW SearchRetrieveRequest.
The <literal>setname</literal> is simply the name of the result set
that holds the reference to the desired record.
The <literal>number</literal> is the offset into the set (with 1
</para>
<para>
- If a SRW SearchRetrieveRequest is received by the frontend server,
- the <literal>referenceId</literal> is NULL, the <literal>request_format
- </literal> (transfer syntax) is XML (OID name
+ If a SRW/SRU SearchRetrieveRequest is received by the frontend server,
+ the <literal>referenceId</literal> is NULL and the
+ <literal>request_format</literal> (transfer syntax) is XML (OID name
<literal>VAL_TEXT_XML</literal>).
- The schema for SRW is stored in the
+ The schema for SRW/SRU is stored in both the
<literal>Z_RecordComposition</literal>
- structure.
+ structure and <literal>schema</literal> (simple string).
</para>
<para>
database that holds the
record. <literal>len</literal> is the length of the record returned, in
bytes, and <literal>record</literal> is a pointer to the record.
- <literal>Last_in_set</literal> should be nonzero only if the record
+ <literal>last_in_set</literal> should be nonzero only if the record
returned is the last one in the given result set.
<literal>errcode</literal> and <literal>errstring</literal>, if
given, will be interpreted as a global error pertaining to the