NMEM thread safe. NMEM must be initialized before use (sigh) -
[yaz-moved-to-github.git] / README
diff --git a/README b/README
index 5079588..dd7207a 100644 (file)
--- a/README
+++ b/README
@@ -1,16 +1,20 @@
 
- * 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.
@@ -35,14 +39,21 @@ 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'.
-simple   ::= term | set.
-term     ::= <word> | '"' <term> ... '"'.
-set      ::= '@set' <setname>.
-attr     ::= '@attr' [<attribute-set>] <number> '=' <number>.
+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.:
 
@@ -95,6 +106,8 @@ server  - This is the implementation of the server frontend. It
 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