X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=README;h=0fce06f8494bf8ba33f14e3bb7abcef05915be42;hp=65646084e67f2c10fa80e9b896f0cdebd8b6ff2d;hb=2a624ff1daa841601aebca86c0196039da6978b3;hpb=69bcd68523a9a8da083faef16887100369152673;ds=inline diff --git a/README b/README index 6564608..0fce06f 100644 --- a/README +++ b/README @@ -1,136 +1,46 @@ +YAZ toolkit -Copyright (C) 1995-2001, Index Data ApS. +Copyright (C) 1995-2015 Index Data. See the file LICENSE for details. -Compilation and installation instructions for YAZ - $Id: README,v 1.36 2001-10-23 21:00:19 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. - -Windows programmers: refer to the file windows.txt which describes how -to build the software using Microsoft Visual C++. +The primary output of the source here is the YAZ library, which +contains support functions for implementing the server or client +role of Z39.50 and SRU. On Unix, GNU configure is used to configure YAZ and generate Makefiles. -Type "./configure", then "make" to build YAZ. - -Note: If you are using the CVS snapshot of YAZ you must have autoconf, -automake and libtool installed. Before running configure, create -support files by running buildconf.sh in the top-level directory of YAZ. - -Two test-programs of interest are generated when you type 'make' at the -top level: ztest/yaz-ztest and client/yaz-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 an -implementation of a 'backend' interface. - -yaz-client is a linemode Z39.50 client. It supports a fair amount of the -functionality of Z39.50V3, but some things you need to enable or -disable by recompilation. Its primary purpose is to excersise the -package, and verify that the protocol works OK. It can be started by -typing - - yaz-client [:[/]] - -at the UNIX prompt, to connect to a Z39.50 server. - -Use '?' to get a list of the available commands. - -The current query language for the find command 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 ::= +Type "./configure", then "make" to build YAZ. Read +doc/installation.unix.html for details. -Eg.: +On Windows, a MS Visual Studio makefile is provided (nmake). The commands + cd \win + nmake +should do. Refer to doc/installation.win32.html for details. - 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 sort command takes a sequence of sort specifications. A sort -specification holds a field (sort criteria) and is followed by flags. -If the sort critieria includes = it is assumed that the sort SortKey -is of type sortAttributes using Bib-1. The integer before the = is -the attribute type and the integer following the = is the attribute -value. If no = is in the SortKey it is treated as a sortfield-type -of type InternationalString. Flags observed are s (sort case -sensitive), i (sort case insensitive), < (ascending), > (descending). -Eg.: - 1=4 i< (use is title, insensitive, ascending). - Title s> (String Title, sensitive, descending). - -The directories: - -doc - Documentation. - -util - Various little utility functions. Logging, memory debugging, - primitive ISO 2709 presentation for the yaz-client, etc. You'll - find the ASN.1 Compiler for YAZ here as well (yc.tcl). - -odr - Open Data Representation. This module implements the BER - encoding rules. Documentation is found in the files odr-use.man - and odr.txt. - -z39.50 - CODECS for the Z39.50 protocol. This module does the same job - as the old 'asn' module except that the source files are - auto-generated using an YAZ' ASN.1 Compiler (yaz-comp). +Note: If you are using the Git snapshot of YAZ you must have autoconf, +automake, libtool and xsltproc installed. Before running configure, create +support files by running buildconf.sh in the top-level directory of YAZ. -zutil - This module implements a collection of Z39.50 utilities, such - as query parsing, etc. +In any case refer to the documentation in sub directory doc or read +it online at http://www.indexdata.com/yaz/ -ill - This module implements the ISO ILL protocol. +File organisation: -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 - TCP/IP, and uses Peter Furniss' XTIMOSI package over RFC1006. - Look for documentation in the file comstack.man. +doc Documentation. -zoom - An implementation of Mike Taylors Z39.50 Object Oriented - Model : ZOOM. If you'd like to build Z39.50 client applications - in C this may be good start. You'll find example programs in - this directory too. +src Source for the YAZ library. -server - This is the implementation of the server frontend. It - provides event-handling and server managament functions, - and calls the backend primitives (best documentation of these - is in the file include/yaz/backend.h). +util Utility programs, ASN.1 compiler, MARC dump utility, and others. -client - A demonstration client for testing the protocol. It's bug'n - ugly. But, it supports many features. +client A demonstration client for testing the protocol. It's bug'n + ugly. But, it supports many features. -ztest - A demonstration server that implements a backend. +ztest A demonstration server that implements a backend. -include/yaz - The various header files. +etc Various configuration files. -lib - The libraries. Primarily libyaz.a. The makefile gathers the - libraries from previous modules into libyaz.a. +include/yaz The various header files. To get more information or assistance, send mail to yaz-help@indexdata.dk. - -We maintain a mailing-list for the purpose of announcing new versions of -the software, bug-reports, discussion etc. You can sign up by sending -mail to yaz-request@indexdata.dk and include the following command -command in your email: - subscribe yaz-l +Even better, sign on to the YAZ mailing list here: +http://lists.indexdata.dk/cgi-bin/mailman/listinfo/yazlist