- * Copyright (C) 1995, Index Data.
+ * Copyright (C) 1995-1997, Index Data.
* See the file LICENSE for details.
* Sebastian Hammer, Adam Dickmeiss
-Compilation and installation
+Compilation and installation for YAZ
+ $Id: README,v 1.18 1997-09-18 08:47:17 adam Exp $
The primary output of the source here is the lib/libyaz.a library,
which contains support functions for implementing the server or client
role of Z39.50/SR.
+Windows programmers: refer to the file MSVC.txt which describes
+how to compile the software using Microsoft Visual C++.
+
Two test-programs of interest are generated when you type 'make' at
-the top level. server/ztest and client/client. Ztest is a dummy database
+the top level: ztest/ztest and client/client. Ztest is a dummy database
server which returns canned responses to all queries. It's good for
verifying that the protocol works ok, and ztest.c shows a minimalistic
implementation of the 'backend' interface.
Use '?' to get a list of the available commands.
+The current query language is a bit awkward, but functional:
+
+query ::= ['@attrset' <attribute-set>] rpn
+rpn ::= complex | simple | attr rpn
+complex ::= operator rpn rpn
+operator ::= '@and' | '@or' | '@not' | '@prox' proximity
+simple ::= term | set.
+term ::= <word> | '"' <term> ... '"'.
+set ::= '@set' <setname>.
+attr ::= '@attr' [<attribute-set>] <number> '=' <number>.
+proximity ::= exclusion distance ordered relation which unit
+exclusion ::= '1' | '0' | 'void'
+distance ::= <number>
+ordered ::= '1' | '0'
+relation ::= <number>
+which ::= 'known' | 'private'
+unit ::= <number>
+
+Eg.:
+
+Andersen
+
+"Hans Andersen"
+
+@and @attr 1=1 andersen @attr 1=4 @attr 4=2 duckling
+
+@attrset Bib-1 @and @attr GILS 2=2008 Washington @attr 1=21 weather
+
The directories:
doc - Documentation.
which defines structure and type definitions for each of the
types introduced in the protocol specification.
-yazlib - This module implements the transport transparency
+comstack- This module implements the transport transparency
stack (COMSTACK). The comstack implements a generic interface
for exchanging BER-encoded records over a network. It supports
the 'American' mode of exchanging the records straight over
client - A demonstration client. If we come upon a good design for a
higher level client API, that will live here.
+ztest - A demonstration server that implements a backend.
+
include - The various header files.
makelib - This is a simple utility that gathers the libraries from the