X-Git-Url: http://sru.miketaylor.org.uk/?a=blobdiff_plain;f=doc%2Freference.xml;h=79a2ec012dc188d2f57187fdba141cd417be4702;hb=7fa984c171c65d05d34775c4533808793b2109cb;hp=28cd49f25774f1fdd52fa969c3bc65336cee3566;hpb=84434e0d19b1ecd73ff09853f7cb3d96f343c237;p=yazproxy-moved-to-github.git
diff --git a/doc/reference.xml b/doc/reference.xml
index 28cd49f..79a2ec0 100644
--- a/doc/reference.xml
+++ b/doc/reference.xml
@@ -32,7 +32,7 @@
usual YAZ address format (typically
tcp:hostname:port)
as described in
- the Addresses section of the YAZ manual.
@@ -58,14 +58,13 @@
- If the proxy receives an SRW/SRU request, the following rules are used.
+ If the proxy receives an SRU request, the following rules are used.
If default target has Explain information with a
database that matches the path of the
- HTTP request of SRW/SRU that backend server is used for
- SRW/SRU operation.
-
+ HTTP request of SRU that backend server is used for SRU operation.
+
@@ -74,13 +73,6 @@
-
-
- We know it is stupid to only check for explain in default target.
- It means that it is only possible to offer one SRW/SRU server.
- We expect to improve that in the next version of the YAZ proxy.
-
- Keep-alive Facility
@@ -199,8 +191,8 @@
The config file is XML based. The YAZ proxy must be compiled
- with libxml2 and
- libXSLT support in
+ with libxml2 and
+ libXSLT support in
order for the config file facility to be enabled.
@@ -221,13 +213,13 @@
The proxy config file must have a root element called
proxy and scoped within namespace
- xmlns="http://indexdata.dk/yazproxy/schema/0.8/.
+ xmlns="http://indexdata.dk/yazproxy/schema/0.9/".
All information except an optional XML header must be stored
within the proxy element.
<?xml version="1.0"?>
- <proxy xmlns="http://indexdata.dk/yazproxy/schema/0.8/">
+ <proxy xmlns="http://indexdata.dk/yazproxy/schema/0.9/">
<!-- content here .. -->
</proxy>
@@ -245,16 +237,17 @@
equivalent to command line option -t.
-
- <?xml version="1.0"?>
- <proxy xmlns="http://indexdata.dk/yazproxy/schema/0.9/">
- <target name="server1" default="1">
- <!-- description of server1 .. -->
- </target>
- <target name="server2">
- <!-- description of server2 .. -->
- </target>
- </proxy>
+
+
+
+
+
+
+
+
+
+ ]]>
@@ -299,6 +292,16 @@
+
+ max-sockets
+
+ The element max-sockets is the child of element
+ target and specifies the maximum number of sockets
+ to use for the target for all sessions using it. In other words: maximum
+ number of Z39.50 session to the target.
+
+
+
keepaliveThe keepalive element holds information about
@@ -352,18 +355,20 @@
The following sets maximum number of bytes transferred per minute to
- 500Kbytes and maximum number of requests to 40.
+ 500Kbytes, maximum number of records retrievals to 40
+ and maximum number of searches to 20.
<limit>
<bandwidth>524288</bandwidth>
<retrieve>40</retrieve>
+ <search>20</search>
</limit>
- Typically the limits for keepalive are much higher than
- those for session minute average.
+ Typically the values in the keepalive section are mugh higher
+ than their equivalent limit counterparts (bandwidth, pdu).
@@ -418,7 +423,8 @@
syntax
The syntax element specifies accept or reject
- or a particular record syntax request from the client.
+ or a particular record syntax request from the client. It also
+ allows record conversion of XML records via XSLT.
The syntax has one required attribute:
@@ -439,6 +445,18 @@
type should be XML. The proxy will use
preferred record syntax USMARC/MARC21 or backendtype
(if given) against the backend target.
+ For the special case where backendtype is
+ opac the proxy will convert the OPAC
+ record to OPACXML.
+
+
+ When marcxml is used, yazproxy assumes
+ that records retrieved from the backend are encoded in the
+ MARC-8 character set.
+ This is correct for most MARC21 based systems, but not for
+ other MARC variants or UTF-8 based MARC21 systems.
+ The backendcharset attribute specifies
+ the character set of the MARC records to be converted.
If attribute backendtype is given, that holds the
@@ -448,17 +466,17 @@
If attribute stylesheet is given, the proxy
will convert XML record from server via XSLT. It is important
that the content from server is XML. If used in conjunction with
- attribute marcxml the MARC to MARCXML conversion
- takes place before the XSLT conversion takes place.
+ attribute marcxml, the MARC to MARCXML/OPACXML
+ conversion takes place before the XSLT conversion takes place.
If attribute identifier is given that is the
- SRW/SRU record schema identifier for the resulting output record (after
+ SRU record schema identifier for the resulting output record (after
MARCXML and/or XSLT conversion).
If sub element title is given (as child element
- of syntax, then that is the official SRW/SRU
+ of syntax, then that is the official SRU
name of the resulting record schema.
@@ -499,7 +517,7 @@
explain
The explain element includes Explain information
- for SRW/SRU about the server in the target section. This
+ for SRU about the server in the target section. This
information must have a serverInfo element
with a database that this target must be available as (URL path).
For example,
@@ -514,7 +532,7 @@
]]>
- In the above case, the SRW/SRU service is available as
+ In the above case, the SRU service is available as
http://myhost.org:8000/mydatabase.
@@ -526,14 +544,14 @@
The content of the cql2rpn element specifies
the path from the working directory to a CQL-to-RPN conversion
file for the server in the target section. This element
- is required for SRW/SRU searches to operate against Z39.50
+ is required for SRU searches to operate against Z39.50
servers that don't support CQL. Most Z39.50 servers only support
Type-1/RPN so this is usually required.
See YAZ documentation for more information about the
- CQL
- to PQF conversion. See also the
+ CQL to PQF conversion.
+ See also the
pqf.properties in the etc
(or prefix/share/yazproxy)
directory of the YAZ proxy distribution.
@@ -554,32 +572,6 @@
-
- max-clients
-
- The element max-clients is the child of element
- proxy and specifies the total number of
- allowed connections to targets (all targets). If this limit
- is reached the proxy will close the least recently used connection.
-
-
- Note, that many Unix systems impose a system on the number of
- open files allowed in a single process, typically in the
- range 256 (Solaris) to 1024 (Linux).
- The proxy uses 2 sockets per session + a few files
- for logging. As a rule of thumb, ensure that 2*max-clients + 5
- can be opened by the proxy process.
-
-
-
- Using the
- bash shell, you can set the limit with
- ulimit -nno.
- Use ulimit -a to display limits.
-
-
-
-
target-authentication
@@ -627,6 +619,46 @@
+
+ target-charset
+
+ The element target-charset specifies the
+ native character set that the target uses for queries.
+
+
+ If this is specified the proxy will act as a Z39.50 server
+ supporting character set negotiation. And in SRU mode
+ it will convert from UTF-8 (UNICODE) to this native character
+ set (if possible).
+
+
+
+
+ max-clients
+
+ The element max-clients is the child of element
+ proxy and specifies the total number of
+ allowed connections to targets (all targets). If this limit
+ is reached the proxy will close the least recently used connection.
+
+
+ Note, that many Unix systems impose a system on the number of
+ open files allowed in a single process, typically in the
+ range 256 (Solaris) to 1024 (Linux).
+ The proxy uses 2 sockets per session + a few files
+ for logging. As a rule of thumb, ensure that 2*max-clients + 5
+ can be opened by the proxy process.
+
+
+
+ Using the bash shell, you can set
+ the limit with
+ ulimit -nno.
+ Use ulimit -a to display limits.
+
+
+
+
log
@@ -684,6 +716,13 @@
and the size of the APDU is logged.
+
+ client-ip
+
+ Log the client IP for each log entry. By default, the client IP
+ is only logged when a new session starts.
+
+
@@ -705,7 +744,8 @@
The element max-connect is a child of element
proxy and specifies the maximum number
- of connections to be initiated within the last minute.
+ of connections to be initiated within the last minute (or
+ value of period-connect.
If the maximum number is reached the proxy will terminate the
@@ -718,11 +758,26 @@
The element max-connect is a child of element
proxy and specifies the limit of number
- of connections to be initiated within the last minute.
+ of connections to be initiated within the last minute (or
+ value of period-connect.
+
+
+ If the maximum number is reached the proxy delays the first operation
+ in the session by one second.
+
+
+
+
+ period-connect
+
+ The element period-connect is a child of element
+ proxy and specifies period - in the number of seconds
+ that limit-connect and
+ max-connect
+ should measure connections.
- If the maximum number is reached the proxy delay the first operatation
- in the session (Thus delaying the connection).
+ If period-connect is omitted, 60 seconds is used.
@@ -782,7 +837,7 @@
The categoryTypeId is either
OID 1.2.840.10003.10.1000.81.1, 1.2.840.10003.10.1000.81.2
for proxy target and proxy cookie respectively. The
- integer element category is set to 0.
+ categoryValue is set to 1.
The value proxy and cookie is stored in element
characterInfo of the information
choice.
@@ -798,7 +853,6 @@
+
@@ -846,6 +901,7 @@
+