X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=README;h=dd7207a87c8ed4d5778368cc6457141337d9b8ff;hp=690f24731010ed3505a3e3fdded7f142b351e773;hb=eb0f67241481fb645a377b1c5df9683f8f1bd2fb;hpb=8f3107265c90e9e90f272eb4d77394b0ca13ff38 diff --git a/README b/README index 690f247..dd7207a 100644 --- 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. @@ -31,9 +35,35 @@ the DANBIB test target, you might use: client osi:0103/find2.denet.dk:4500 -Client supports CCL-queries, with the mapping between qualifiers and -attribute values specified in the file default.bib in the working -directory. Use '?' to get a list of the available commands. +Use '?' to get a list of the available commands. + +The current query language is a bit awkward, but functional: + +query ::= ['@attrset' ] rpn +rpn ::= complex | simple | attr rpn +complex ::= operator rpn rpn +operator ::= '@and' | '@or' | '@not' | '@prox' proximity +simple ::= term | set. +term ::= | '"' ... '"'. +set ::= '@set' . +attr ::= '@attr' [] '=' . +proximity ::= exclusion distance ordered relation which unit +exclusion ::= '1' | '0' | 'void' +distance ::= +ordered ::= '1' | '0' +relation ::= +which ::= 'known' | 'private' +unit ::= + +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: @@ -53,7 +83,7 @@ asn - This module implements the Z39.50/SR protocol. The best way 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 @@ -76,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