added a lot of info about attribute sets, PQF query structure, and string use attributes
authorMarc Cromme <marc@indexdata.dk>
Tue, 13 Jun 2006 13:45:08 +0000 (13:45 +0000)
committerMarc Cromme <marc@indexdata.dk>
Tue, 13 Jun 2006 13:45:08 +0000 (13:45 +0000)
doc/administration.xml
doc/architecture.xml
doc/introduction.xml
doc/querymodel.xml
doc/recordmodel-alvisxslt.xml
doc/server.xml
doc/zebrasrv-man.xml
doc/zebrasrv-virtual.xml

index 10babae..7303d30 100644 (file)
@@ -1,5 +1,5 @@
 <chapter id="administration">
 <chapter id="administration">
- <!-- $Id: administration.xml,v 1.38 2006-06-13 09:26:59 marc Exp $ -->
+ <!-- $Id: administration.xml,v 1.39 2006-06-13 13:45:08 marc Exp $ -->
  <title>Administrating Zebra</title>
  <!-- ### It's a bit daft that this chapter (which describes half of
           the configuration-file formats) is separated from
  <title>Administrating Zebra</title>
  <!-- ### It's a bit daft that this chapter (which describes half of
           the configuration-file formats) is separated from
     the Bib-1 relation attribute with
     value ``relevance'' to the PQF query (that is,
     <literal>@attr&nbsp;2=102</literal>, see also  
     the Bib-1 relation attribute with
     value ``relevance'' to the PQF query (that is,
     <literal>@attr&nbsp;2=102</literal>, see also  
-    <ulink url="http://www.loc.gov/z3950/agency/bib1.html">
+    <ulink url="&url.z39.50;bib1.html">
      The BIB-1 Attribute Set Semantics</ulink>, also in 
      The BIB-1 Attribute Set Semantics</ulink>, also in 
-      <ulink url="http://www.loc.gov/z3950/agency/defns/bib1.html">HTML</ulink>). 
+      <ulink url="&url.z39.50.attset.bib1;">HTML</ulink>). 
     To find all articles with the word <literal>Eoraptor</literal> in
     the title, and present them relevance ranked, issue the PQF query:
     <screen>
     To find all articles with the word <literal>Eoraptor</literal> in
     the title, and present them relevance ranked, issue the PQF query:
     <screen>
index ff840a6..7db023e 100644 (file)
@@ -1,5 +1,5 @@
  <chapter id="architecture">
  <chapter id="architecture">
-  <!-- $Id: architecture.xml,v 1.9 2006-06-13 09:27:01 marc Exp $ -->
+  <!-- $Id: architecture.xml,v 1.10 2006-06-13 13:45:08 marc Exp $ -->
   <title>Overview of Zebra Architecture</title>
   
 
   <title>Overview of Zebra Architecture</title>
   
 
      as HTTP server, honoring
       <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink> 
      SOAP requests, and  
      as HTTP server, honoring
       <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink> 
      SOAP requests, and  
-     <ulink url="http://www.loc.gov/standards/sru/">SRU</ulink> 
+     <ulink url="&url.sru;">SRU</ulink> 
      REST requests. Moreover, it can
      translate incoming 
      REST requests. Moreover, it can
      translate incoming 
-     <ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink>
+     <ulink url="&url.cql;">CQL</ulink>
      queries to
      <ulink url="http://indexdata.com/yaz/doc/tools.tkl#PQF">PQF</ulink>
       queries, if
      queries to
      <ulink url="http://indexdata.com/yaz/doc/tools.tkl#PQF">PQF</ulink>
       queries, if
index 81deaab..6c43d25 100644 (file)
@@ -1,5 +1,5 @@
 <chapter id="introduction">
 <chapter id="introduction">
- <!-- $Id: introduction.xml,v 1.32 2006-04-25 12:26:26 marc Exp $ -->
+ <!-- $Id: introduction.xml,v 1.33 2006-06-13 13:45:08 marc Exp $ -->
  <title>Introduction</title>
  
  <sect1>
  <title>Introduction</title>
  
  <sect1>
         <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>-to-Z39.50 gateway, currently in beta test.
        -->
        Experimental support of the 
         <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>-to-Z39.50 gateway, currently in beta test.
        -->
        Experimental support of the 
-       Search/Retrieve Via URL ( <ulink url="http://www.loc.gov/standards/sru/">SRU</ulink>) 
-       <ulink url="http://www.loc.gov/standards/sru/"/>
+       Search/Retrieve Via URL ( <ulink url="&url.sru;">SRU</ulink>) 
+       <ulink url="&url.sru;"/>
        REST webservice, and the 
         Search/Retrieve Web Service ( <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>)
        <ulink url="http://www.loc.gov/standards/sru/srw/"/>
        SOAP Web Service have recently been added to the YAZ/Zebra
        REST webservice, and the 
         Search/Retrieve Web Service ( <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>)
        <ulink url="http://www.loc.gov/standards/sru/srw/"/>
        SOAP Web Service have recently been added to the YAZ/Zebra
-       combo - including server side Common Query Language (<ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink>)
-       <ulink url="http://www.loc.gov/standards/sru/cql/"/> parsing
+       combo - including server side Common Query Language (<ulink url="&url.cql;">CQL</ulink>)
+       <ulink url="&url.cql;"/> parsing
        and configuration. It remains to find a sponsor for further testing,
        documentation and packaging of this exiting component.
      </para>
        and configuration. It remains to find a sponsor for further testing,
        documentation and packaging of this exiting component.
      </para>
index bae113f..20e6b4b 100644 (file)
@@ -1,5 +1,5 @@
 <chapter id="querymodel">
 <chapter id="querymodel">
- <!-- $Id: querymodel.xml,v 1.1 2006-06-13 09:27:01 marc Exp $ -->
+ <!-- $Id: querymodel.xml,v 1.2 2006-06-13 13:45:08 marc Exp $ -->
  <title>Query Model</title>
  
   <sect1 id="querymodel-overview">
  <title>Query Model</title>
  
   <sect1 id="querymodel-overview">
@@ -8,8 +8,8 @@
    <para>
     Zebra is born as a networking Information Retrieval engine adhering
     to the international standards 
    <para>
     Zebra is born as a networking Information Retrieval engine adhering
     to the international standards 
-    <ulink url="http://www.loc.gov/z3950/agency/">Z39.50</ulink> and
-    <ulink url="http://www.loc.gov/standards/sru/">SRU</ulink>,
+    <ulink url="&url.z39.50;">Z39.50</ulink> and
+    <ulink url="&url.sru;">SRU</ulink>,
     and implement the query model defined there.
     Unfortunately, the Z39.50 query model has only defined a binary
     encoded representation, which is used as transport packaging in
     and implement the query model defined there.
     Unfortunately, the Z39.50 query model has only defined a binary
     encoded representation, which is used as transport packaging in
@@ -29,7 +29,7 @@
    <para>
     In addition, Zebra can be configured to understand and map the 
     <literal>Common Query Language</literal>
    <para>
     In addition, Zebra can be configured to understand and map the 
     <literal>Common Query Language</literal>
-    (<ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink>)
+    (<ulink url="&url.cql;">CQL</ulink>)
     to PQF. See an introduction on the mapping to the internal query
     representation in  
     <xref linkend="querymodel-cql-to-pqf"/>.
     to PQF. See an introduction on the mapping to the internal query
     representation in  
     <xref linkend="querymodel-cql-to-pqf"/>.
    <title>Prefix Query Format structure and syntax</title>
    <para>
     The 
    <title>Prefix Query Format structure and syntax</title>
    <para>
     The 
-    <ulink url="http://indexdata.dk/yaz/doc/tools.tkl#PQF">PQF
-    grammer</ulink> is documented in the YAZ manual.
+    <ulink url="&url.yaz.pqf;">PQF
+    grammer</ulink> is documented in the YAZ manual, and shall not be
+    repeated here.
     This textual PQF representation
     is always during search mapped to the equivalent Zebra internal
     query parse tree. 
    </para>
 
     This textual PQF representation
     is always during search mapped to the equivalent Zebra internal
     query parse tree. 
    </para>
 
+   <sect2 id="querymodel-pqf-tree">
+    <title>PQF tree structure</title>
    <para>
    <para>
+    The PQF parse tree - or the equivalent textual representation -
+    may start with one specification of the 
+    <emphasis>attribute set</emphasis> used. Following is a query
+    tree, which 
+    consists of <emphasis>atomic query parts</emphasis>, eventually
+    paired by <emphasis>boolean binary operators</emphasis>, and 
+    finally  <emphasis>recursively combined </emphasis> into 
+     complex query trees.   
    </para>
 
    </para>
 
+   <sect3 id="querymodel-attribute-sets">
+    <title>Attribute sets</title>
+    <para>
+      Attribute sets define the exact meaning and semantics of queries
+      issued. Zebra comes with some predefined attribute set
+      definitions, others can easily be defined and added to the
+      configuration.
+      <note>
+      The Zebra internal query procesing is modeled after 
+      the <literal>Bib1</literal> attribute set, and the non-use
+      attributes type 2-9 are hard-wired in. It is therefore essential
+      to be familiar with <xref linkend="querymodel-bib1"/>. 
+    </note>
+   </para>
+
+   <table id="querymodel-attribute-sets-table">
+    <caption>Attribute sets predefined in Zebra</caption>
+     <!--
+     <thead>
+      <tr><td>one</td><td>two</td></tr>
+     </thead>
+     -->
+     <tbody>
+      <tr>
+       <td><emphasis>exp-1</emphasis></td>
+       <td><literal>Explain</literal> attribute set</td>
+       <td>Special attribute set used on the special automagic
+       <literal>IR-Explain-1</literal> database to gain information on
+       server capabilities, database names, and database
+       and semantics.</td>
+      </tr>
+      <tr>
+       <td><emphasis>bib-1</emphasis></td>
+       <td><literal>Bib1</literal> attribute set</td>
+       <td>Standard PQF query language attribute set which defines the
+           semantics of Z39.50 searching. In addition, all of the
+       non-use attributes (type 2-9) define the Zebra internal query
+       processing</td>
+      </tr>
+      <tr>
+       <td><emphasis>gils</emphasis></td>
+       <td><literal>GILS</literal> attribute set</td>
+       <td>Extention to the <literal>Bib1</literal> attribute set.</td>
+      </tr>
+     </tbody>
+   </table>
+   </sect3>
+
+   <sect3 id="querymodel-boolean-operators">
+    <title>Boolean operators</title>
+    <para>
+      A pair of subquery trees, or of atomic queries, is combined
+      using the standard boolean operators into new query trees.
+    </para>
+
+   <table id="querymodel-boolean-operators-table">
+    <caption>Boolean operators</caption>
+     <!--
+     <thead>
+      <tr><td>one</td><td>two</td></tr>
+     </thead>
+     -->
+     <tbody>
+      <tr><td><emphasis>@and</emphasis></td>
+          <td>binary <literal>AND</literal> operator</td>
+          <td>Set intersection of two atomic queries hit sets</td>
+      </tr>
+      <tr><td><emphasis>@or</emphasis></td>
+          <td>binary <literal>OR</literal> operator</td>
+          <td>Set union of two atomic queries hit sets</td>
+      </tr>
+      <tr><td><emphasis>@not</emphasis></td>
+          <td>binary <literal>AND NOT</literal> operator</td>
+          <td>Set complement of two atomic queries hit sets</td>
+      </tr>
+      <tr><td><emphasis>@prox</emphasis></td>
+          <td>binary <literal>PROXIMY</literal> operator</td>
+          <td>Set intersection of two atomic queries hit sets. In 
+              addition, the intersection set is purged for all 
+              documents which do not satisfy the requested query 
+              term proximity. Usually a proper subset of the AND 
+              operation.</td>
+      </tr>
+     </tbody>
+   </table>
+
+   <para>
+      For example, we can combine the terms 
+      <emphasis>information</emphasis> and <emphasis>retrieval</emphasis> 
+      into different searches in the default index of the default
+      attribute set as follows.
+      Querying for the union of all documents containing the
+      terms <emphasis>information</emphasis> OR
+      <emphasis>retrieval</emphasis>: 
+     <screen>
+       @or information retrieval
+     </screen>
+   </para>
+   <para>
+      Querying for the intersection of all documents containing the
+      terms <emphasis>information</emphasis> AND
+      <emphasis>retrieval</emphasis>: 
+      The hit set is a subset of the coresponding
+      OR query.
+     <screen>
+       @and information retrieval
+     </screen>
+   </para>
+   <para>
+      Querying for the intersection of all documents containing the
+      terms <emphasis>information</emphasis> AND
+      <emphasis>retrieval</emphasis>, taking proximity into account:
+      The hit set is a subset of the coresponding
+      AND query.
+     <screen>
+       @prox information retrieval
+     </screen>
+   </para>
+   <para>
+      Querying for the intersection of all documents containing the
+      terms <emphasis>information</emphasis> AND
+      <emphasis>retrieval</emphasis>, in the same order and near each
+      other as described in the term list  
+      The hit set is a subset of the coresponding
+      PROXIMY query.
+    <screen>
+       "information retrieval"
+     </screen>
+   </para>
+  </sect3>
+   
+
+   <sect3 id="querymodel-atomic-queries">
+    <title>Atomic queries</title>
+    <para>
+      Atomic queries are the query parts which work on one acess point
+      only. These consist of <literal>an attribute list</literal>
+      followed by a <literal>single term</literal> or a
+      <literal>quoted term list</literal>.
+    </para>
+    <para>
+      Unsupplied non-use attributes type 2-9 are either inherited from
+      higher nodes in the query tree, or are set to Zebra's default values.
+      See <xref linkend="querymodel-bib1"/> for details. 
+    </para>
+
+   <table id="querymodel-atomic-queries-table">
+    <caption>Atomic queries</caption>
+     <!--
+     <thead>
+      <tr><td>one</td><td>two</td></tr>
+     </thead>
+     -->
+     <tbody>
+      <tr><td><emphasis>attribute list</emphasis></td>
+          <td>List of <literal>orthogonal</literal> attributes</td>
+          <td>Any of the orthogonal attribute types may be omitted,
+          these are inherited from higher query tree nodes, or if not
+          inherited, are set to the default Zebra configuration values.
+       </td>
+      </tr>
+      <tr><td><emphasis>term</emphasis></td>
+          <td>single <literal>term</literal> 
+        or <literal>quoted term list</literal>   </td>
+          <td>Here the search terms or list of search terms is added
+          to the query</td>
+      </tr>
+     </tbody>
+   </table>
+   <para>
+      Querying for the term <emphasis>information</emphasis> in the
+      default index using the default attribite set, the server choice
+      of access point/index, and the default non-use attributes.
+    <screen>
+       "information"
+     </screen>
+   </para>
+   <para>
+    Equivalent query fully specified:
+      <screen>
+       @attrset bib-1 @attr 1=1017 @attr 2=3 @attr 3=3 @attr 4=1 @attr 5=100 @attr 6=1 "information"
+      </screen>
+   </para>
+
+   <para>
+    Finding all documents which have empty titles. Notice that the
+    empty term must be quoted, but is otherwise legal.
+      <screen>
+       @attr 1=4 ""
+      </screen>
+   </para>
+
+  </sect3>
+
+    <sect3 id="querymodel-use-string">
+     <title>Zebra's special use attribute of type 'string'</title>
+     <para>
+      The numeric <literal>use (type 1)</literal> attribute is usually 
+        refered to from a given
+      attribute set. In addition, Zebra let you use 
+      <emphasis>any internal index
+      name defined in your configuration</emphasis> 
+        as use atribute value. This is a great feature for
+      debugging, and when you do
+      not need the complecity of defined use attribute values. It is
+      the preferred way of accessing Zebra indexes directly.  
+     </para>
+     <para>
+      Finding all documents which have the term list "information
+      retrieval" in an Zebra index, using it's internal full string name.
+      <screen>
+       @attr 1=sometext "information retrieval"
+      </screen>
+   </para>
+     <para>
+      Searching the bib-1 use attribute 54 using it's string name:
+      <screen>
+       @attr 1=Code-language eng
+      </screen>
+   </para>
+     <para>
+      Searching in any silly string index - if it's defined in your
+      indexation rules and can be parsed by the PQF parser. 
+      This is definitely not the recommended use of
+      this facility, as it might confuse your users with some very
+      unexpected results.
+      <screen>
+       @attr 1=silly/xpath/alike[@index]/name "information retrieval"
+      </screen>
+   </para>
+   <para>
+      See <xref linkend="querymodel-bib1-mapping"/> for details, and 
+       <xref linkend="server-sru"/>
+      for the SRU PQF query extention using string names as a fast
+       debugging facility.
+   </para>
+  </sect3>
+
+  </sect2>
+
   <sect2 id="querymodel-exp1">
    <title>Explain Attribute Set</title>
   <sect2 id="querymodel-exp1">
    <title>Explain Attribute Set</title>
+    <para>
+     The Z39.50 standard defines the  
+     <ulink url="&url.z39.50.explain;">Explain</ulink>attribute set
+     <literal>exp-1</literal>, which is used to discover information 
+     about a server's search semantics and functional capabilities
+     Zebra exposes a  "classic" 
+     Explain database by base name <literal>IR-Explain-1</literal>, which
+     is populated with system internal information.  
+    </para>
    <para>
    <para>
-     The attribute-set <literal>exp-1</literal> is defined for
-     searching an Explain <literal>IR-Explain-1</literal> database. 
-     It consists of a single <literal>Use (type 1)</literal> attribute. 
+     The attribute-set <literal>exp-1</literal> consists of a single 
+     <literal>Use (type 1)</literal> attribute. 
    </para>
    <para>
      In addition, the non-Use
    </para>
    <para>
      In addition, the non-Use
      <literal>Relation</literal>, <literal>Position</literal>,
      <literal>Structure</literal>, <literal>Truncation</literal>, 
      and <literal>Completeness</literal> are imported from 
      <literal>Relation</literal>, <literal>Position</literal>,
      <literal>Structure</literal>, <literal>Truncation</literal>, 
      and <literal>Completeness</literal> are imported from 
-     the <literal>bib-1</literal> attrubute set, and may be used
+     the <literal>bib-1</literal> attribute set, and may be used
      within any explain query. 
    </para>
     
      within any explain query. 
    </para>
     
     
     <sect3>
      <title>Explain searches with yaz-client</title>
     
     <sect3>
      <title>Explain searches with yaz-client</title>
+    <para>
+     Classic Explain only defines retrieval of Explain information
+     via ASN.1. Pratically no Z39.50 clients supports this. Fortunately
+     they don't have to - Zebra allows retrieval of this information
+     in other formats:
+     <literal>SUTRS</literal>, <literal>XML</literal>, 
+     <literal>GRS-1</literal> and  <literal>ASN.1</literal> Explain.
+    </para>
+
      <para>
       List supported categories to find out which explain commands are
       supported: 
      <para>
       List supported categories to find out which explain commands are
       supported: 
     Most of the information contained in this section is an excerpt of
     the <literal>ATTRIBUTE SET BIB-1 (Z39.50-1995)
     SEMANTICS</literal>, found at  <ulink
     Most of the information contained in this section is an excerpt of
     the <literal>ATTRIBUTE SET BIB-1 (Z39.50-1995)
     SEMANTICS</literal>, found at  <ulink
-    url="http://www.loc.gov/z3950/agency/bib1.html">The BIB-1
+    url="&url.z39.50.attset.bib1.1995;">The BIB-1
     Attribute Set Semantics</ulink> from 1995, also in an updated 
     Attribute Set Semantics</ulink> from 1995, also in an updated 
-   <ulink
-    url="http://www.loc.gov/z3950/agency/defns/bib1.html">Bib-1
+   <ulink url="&url.z39.50.attset.bib1;">Bib-1
     Attribute Set</ulink> 
     version from 2003. Index Data is not the copyright holder of this
     information. 
     Attribute Set</ulink> 
     version from 2003. Index Data is not the copyright holder of this
     information. 
    </sect3>
 
    <sect3 id="querymodel-bib1-relation">
    </sect3>
 
    <sect3 id="querymodel-bib1-relation">
-    <title>Relation Attributes     (type = 2)</title>
+    <title>Relation Attributes (type = 2)</title>
    </sect3>
    <para>
    </para>
 
    <sect3 id="querymodel-bib1-position">
    </sect3>
    <para>
    </para>
 
    <sect3 id="querymodel-bib1-position">
-    <title>Position Attributes     (type = 3)</title>
+    <title>Position Attributes (type = 3)</title>
    </sect3>
 
    <sect3 id="querymodel-bib1-structure">
    </sect3>
 
    <sect3 id="querymodel-bib1-structure">
-    <title>Structure Attributes    (type = 4)</title>
+    <title>Structure Attributes (type = 4)</title>
    </sect3>
 
    <sect3 id="querymodel-bib1-truncation">
    </sect3>
 
    <sect3 id="querymodel-bib1-truncation">
-    <title>Truncation Attributes   (type = 5)</title>
+    <title>Truncation Attributes (type = 5)</title>
    </sect3>
 
    <sect3 id="querymodel-bib1-completeness">
    </sect3>
 
    <sect3 id="querymodel-bib1-completeness">
     Hosts option, one can configure
     the YAZ Frontend CQL-to-PQF
     converter, specifying the interpretation of various 
     Hosts option, one can configure
     the YAZ Frontend CQL-to-PQF
     converter, specifying the interpretation of various 
-    <ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink>
+    <ulink url="&url.cql;">CQL</ulink>
     indexes, relations, etc. in terms of Type-1 query attributes.
     <!-- The  yaz-client config file -->  
    </para>
     indexes, relations, etc. in terms of Type-1 query attributes.
     <!-- The  yaz-client config file -->  
    </para>
 http://www.loc.gov/z3950/agency/document.html
 
     PQF and BIB-1 stuff to be explained
 http://www.loc.gov/z3950/agency/document.html
 
     PQF and BIB-1 stuff to be explained
-    <ulink url="http://www.loc.gov/z3950/agency/defns/bib1.html">
+    <ulink url="&url.z39.50.attset.bib1;">
      http://www.loc.gov/z3950/agency/defns/bib1.html</ulink> 
 
      http://www.loc.gov/z3950/agency/defns/bib1.html</ulink> 
 
-     <ulink url="http://www.loc.gov/z3950/agency/bib1.html">
+     <ulink url="&url.z39.50.attset.bib1.1995;">
      http://www.loc.gov/z3950/agency/bib1.html</ulink> 
 
      http://www.loc.gov/z3950/agency/markup/13.html
      http://www.loc.gov/z3950/agency/bib1.html</ulink> 
 
      http://www.loc.gov/z3950/agency/markup/13.html
index be69601..970e922 100644 (file)
@@ -1,5 +1,5 @@
  <chapter id="record-model-alvisxslt">
  <chapter id="record-model-alvisxslt">
-  <!-- $Id: recordmodel-alvisxslt.xml,v 1.7 2006-04-25 12:26:26 marc Exp $ -->
+  <!-- $Id: recordmodel-alvisxslt.xml,v 1.8 2006-06-13 13:45:08 marc Exp $ -->
   <title>ALVIS XML Record Model and Filter Module</title>
   
 
   <title>ALVIS XML Record Model and Filter Module</title>
   
 
@@ -58,7 +58,7 @@
     unique, these are the literal <literal>schema</literal> or 
     <literal>element set</literal> names used in 
       <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>,
     unique, these are the literal <literal>schema</literal> or 
     <literal>element set</literal> names used in 
       <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>,
-      <ulink url="http://www.loc.gov/standards/sru/">SRU</ulink> and
+      <ulink url="&url.sru;">SRU</ulink> and
     Z39.50 protocol queries.
     The paths in the <literal>stylesheet</literal> attributes
     are relative to zebras working directory, or absolute to file
     Z39.50 protocol queries.
     The paths in the <literal>stylesheet</literal> attributes
     are relative to zebras working directory, or absolute to file
       the YAZ manual CQL section</ulink>
      for the details
      of the YAZ frontend server 
       the YAZ manual CQL section</ulink>
      for the details
      of the YAZ frontend server 
-     <ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink>
+     <ulink url="&url.cql;">CQL</ulink>
      configuration. 
     </para>
     <para>
      configuration. 
     </para>
     <para>
@@ -491,7 +491,7 @@ c)  Main "alvis" XSLT filter config file:
   and so on.
 
 - in db/ a cql2pqf.txt yaz-client config file 
   and so on.
 
 - in db/ a cql2pqf.txt yaz-client config file 
-  which is also used in the yaz-server <ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink>-to-PQF process
+  which is also used in the yaz-server <ulink url="&url.cql;">CQL</ulink>-to-PQF process
 
    see: http://www.indexdata.com/yaz/doc/tools.tkl#tools.cql.map
 
 
    see: http://www.indexdata.com/yaz/doc/tools.tkl#tools.cql.map
 
index 4113196..dd0a9e9 100644 (file)
@@ -1,5 +1,5 @@
 <chapter id="server">
 <chapter id="server">
- <!-- $Id: server.xml,v 1.23 2006-06-13 09:27:01 marc Exp $ -->
+ <!-- $Id: server.xml,v 1.24 2006-06-13 13:45:08 marc Exp $ -->
  <title>The Z39.50 Server</title>
  
  <sect1 id="zebrasrv">
  <title>The Z39.50 Server</title>
  
  <sect1 id="zebrasrv">
     </para>
     <para>
      The records in the explain database are of type 
     </para>
     <para>
      The records in the explain database are of type 
-     <literal>grs.sgml</literal> and can be retrieved as
-     <literal>SUTRS</literal>, <literal>XML</literal>, 
-     <literal>GRS-1</literal> and  <literal>ASN.1</literal> Explain.
-    </para>
-    <para>
-     Classic Explain only defines retrieaval of Explain information
-     via ASN.1. Pratically no Z39.50 clients supports this. Fortunately
-     they don't have to - since Zebra allows retrieval of this information
-     in the other formats.
-    </para>
-    <para>
+     <literal>grs.sgml</literal>.
      The root element for the Explain grs.sgml records is 
      <literal>explain</literal>, thus 
      <filename>explain.abs</filename> is used for indexing.
      The root element for the Explain grs.sgml records is 
      <literal>explain</literal>, thus 
      <filename>explain.abs</filename> is used for indexing.
index ae8ff7c..07aa192 100644 (file)
@@ -1,6 +1,12 @@
 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" 
  "http://www.oasis-open.org/docbook/xml/4.1/docbookx.dtd"
 [
 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" 
  "http://www.oasis-open.org/docbook/xml/4.1/docbookx.dtd"
 [
+     <!ENTITY % local SYSTEM "local.ent">
+     %local;
+     <!ENTITY % entities  SYSTEM "entities.ent">
+     %entities;
+     <!ENTITY % common  SYSTEM "common/common.ent">
+     %common;
      <!ENTITY zebrasrv-synopsis SYSTEM "zebrasrv-synopsis.xml">
      <!ENTITY zebrasrv-options SYSTEM "zebrasrv-options.xml">
      <!ENTITY zebrasrv-virtual SYSTEM "zebrasrv-virtual.xml">
      <!ENTITY zebrasrv-synopsis SYSTEM "zebrasrv-synopsis.xml">
      <!ENTITY zebrasrv-options SYSTEM "zebrasrv-options.xml">
      <!ENTITY zebrasrv-virtual SYSTEM "zebrasrv-virtual.xml">
@@ -11,7 +17,7 @@
      <!-- <!ENTITY zebrasrv-commands SYSTEM "zebrasrv-commands.xml"> -->
 
 
      <!-- <!ENTITY zebrasrv-commands SYSTEM "zebrasrv-commands.xml"> -->
 
 
-<!-- $Id: zebrasrv-man.xml,v 1.1 2006-05-24 19:12:46 adam Exp $ -->
+<!-- $Id: zebrasrv-man.xml,v 1.2 2006-06-13 13:45:08 marc Exp $ -->
 <refentry id="zebrasrv">
  
  <refmeta>
 <refentry id="zebrasrv">
  
  <refmeta>
index 2ed8c92..248ab14 100644 (file)
@@ -1,5 +1,5 @@
 <!-- 
 <!-- 
-   $Id: zebrasrv-virtual.xml,v 1.6 2006-04-25 12:26:27 marc Exp $
+   $Id: zebrasrv-virtual.xml,v 1.7 2006-06-13 13:45:08 marc Exp $
    Description of the virtual host mechanism in YAZ GFS
    Included in both manual and man page for yaz-ztest
 -->
    Description of the virtual host mechanism in YAZ GFS
    Included in both manual and man page for yaz-ztest
 -->
@@ -11,9 +11,9 @@
 </para>
 <para>
  A backend can be configured to execute in a particular working
 </para>
 <para>
  A backend can be configured to execute in a particular working
- directory. Or the YAZ frontend may perform <ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink> to RPN conversion, thus
- allowing traditional Z39.50 backends to be offered as a  <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>/ <ulink url="http://www.loc.gov/standards/sru/">SRU</ulink>
- service.  <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>/ <ulink url="http://www.loc.gov/standards/sru/">SRU</ulink> Explain information for a particular backend may also
+ directory. Or the YAZ frontend may perform <ulink url="&url.cql;">CQL</ulink> to RPN conversion, thus
+ allowing traditional Z39.50 backends to be offered as a  <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>/ <ulink url="&url.sru;">SRU</ulink>
+ service.  <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>/ <ulink url="&url.sru;">SRU</ulink> Explain information for a particular backend may also
  be specified.
 </para>
 <para>
  be specified.
 </para>
 <para>
   <varlistentry><term>element <literal>cql2rpn</literal> (optional)</term>
    <listitem>
     <para>
   <varlistentry><term>element <literal>cql2rpn</literal> (optional)</term>
    <listitem>
     <para>
-     Specifies a filename that includes <ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink> to RPN conversion for this
-     backend server. See <ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink> section in YAZ manual.
+     Specifies a filename that includes <ulink url="&url.cql;">CQL</ulink> to RPN conversion for this
+     backend server. See <ulink url="&url.cql;">CQL</ulink> section in YAZ manual.
      If given, the backend server will only "see" a Type-1/RPN query. 
     </para>
    </listitem>
      If given, the backend server will only "see" a Type-1/RPN query. 
     </para>
    </listitem>
   <varlistentry><term>element <literal>explain</literal> (optional)</term>
    <listitem>
     <para>
   <varlistentry><term>element <literal>explain</literal> (optional)</term>
    <listitem>
     <para>
-     Specifies  <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>/ <ulink url="http://www.loc.gov/standards/sru/">SRU</ulink> ZeeRex content for this server. Copied verbatim
+     Specifies  <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>/ <ulink url="&url.sru;">SRU</ulink> ZeeRex content for this server. Copied verbatim
      to the client. As things are now, some of the Explain content
      seems redundant because host information, etc. is also stored
      elsewhere.
      to the client. As things are now, some of the Explain content
      seems redundant because host information, etc. is also stored
      elsewhere.
  elements.
 </para>
 <para>
  elements.
 </para>
 <para>
- For <literal>"server2"</literal> elements for <ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink> to RPN conversion
+ For <literal>"server2"</literal> elements for 
+<ulink url="&url.cql;">CQL</ulink> to RPN conversion
  is supported and explain information has been added (a short one here
  to keep the example small).
 </para>
  is supported and explain information has been added (a short one here
  to keep the example small).
 </para>