X-Git-Url: http://lists.indexdata.com/cgi-bin?a=blobdiff_plain;f=doc%2Fzoom.xml;h=1355d762ca4073c5bad734ae3bf4e2f3c5cf4371;hb=4f606f0faf502a0aa4d05d3b84caca247759c806;hp=a971125a2c9be57f890f0e8cbec144bb1b639b6d;hpb=c03baef23be97fa40de8b65e46a3fdde9469effa;p=metaproxy-moved-to-github.git diff --git a/doc/zoom.xml b/doc/zoom.xml index a971125..1355d76 100644 --- a/doc/zoom.xml +++ b/doc/zoom.xml @@ -1,4 +1,4 @@ - @@ -9,18 +9,18 @@ Metaproxy Index Data - + zoom 3mp Metaproxy Module - + zoom Metaproxy ZOOM Module - + DESCRIPTION @@ -29,7 +29,7 @@ The client implements the protocols that ZOOM C does: Z39.50, SRU (GET, POST, SOAP) and SOLR . - + This filter only deals with Z39.50 on input. The following services are supported: init, search, present and close. The backend target @@ -56,9 +56,10 @@ CONFIGURATION - The configuration consists of five parts: torus, + The configuration consists of six parts: torus, fieldmap, cclmap, - contentProxy and log. + contentProxy, log + and zoom. torus @@ -71,14 +72,46 @@ attribute url + URL of Web service to be used when fetch target profiles from + a remote service (Torus normally). + + + The sequence %query is replaced with a CQL + query for the Torus search. + + + The special sequence %realm is replaced by value + of attribute realm or by realm DATABASE argument. + + + The special sequence %db is replaced with + a single database while searching. Note that this sequence + is no longer needed, because the %query can already + query for a single database by using CQL query + udb==.... + + + + + attribute content_url + + URL of Web service to be used to fetch target profile - for a given database (udb). The special sequence - %db of the URL is replaced by the - actual database specified as part of Search. + for a given database (udb) of type content. Semantics otherwise like + url attribute above. + attribute realm + + + The default realm value. Used for %realm in URL, unless + specified in DATABASE argument. + + + + attribute proxy @@ -121,6 +154,29 @@ + attribute explain_xsl + + + Specifies a stylesheet that converts one or more Torus records + to ZeeExplain records. The content of recordData is assumed to be + holding each Explain record. + + + + + attribute record_xsl + + + Specifies a stylesheet that converts retrieval records after + transform/literal operations. + + + When Metaproxy creates a content proxy session, the XSL parameter + cproxyhost is passed to the transform. + + + + element records @@ -132,7 +188,7 @@ - + fieldmap The fieldmap may be specified zero or more times and @@ -158,7 +214,7 @@ - + cclmap The third part of the configuration consists of zero or more @@ -177,6 +233,17 @@ + attribute config_file + + + Specifies the file that configures the cf-proxy system. Metaproxy + uses setting sessiondir and + proxyhostname from that file to configure + name of proxy host and directory of parameter files for the cf-proxy. + + + + attribute server @@ -184,6 +251,12 @@ host[:port]. That is without a method (such as HTTP) and optional port number. + + + This setting is deprecated. Use the config_file (above) + to inform about the proxy server. + + @@ -196,6 +269,12 @@ using the mkstemp(3) system call. The default value of this setting is /tmp/cf.XXXXXX.p. + + + This setting is deprecated. Use the config_file (above) + to inform about the session file area. + + @@ -221,6 +300,35 @@ + + + zoom + + The zoom element controls settings for the + ZOOM. + + + + attribute timeout + + + Is an integer that specifies, in seconds, how long an operation + may take before ZOOM gives up. Default value is 40. + + + + + attribute proxy_timeout + + + Is an integer that specifies, in seconds, how long an operation + a proxy check will wait before giving up. Default value is 1. + + + + + + QUERY HANDLING @@ -239,11 +347,14 @@ Step 1: for CCL, the query is converted to RPN via - cclmap elements part of the target profile. + cclmap elements part of + the target profile as well as + base CCL maps. Step 1: For CQL, the query is converted to CCL. The mappings of - CQL fields to CCL fields are handled by fieldmap + CQL fields to CCL fields are handled by + fieldmap elements as part of the target profile. The resulting query, CCL, is the converted to RPN using the schema mentioned earlier (via cclmap). @@ -255,15 +366,15 @@ type. - + SORTING The ZOOM module actively handle CQL sorting - using the SORTBY parameter which was introduced in SRU version 1.2. The conversion from SORTBY clause - to native sort for some target is driven by the two parameters: - sortStrategy - and sortmap_field. + to native sort for some target is driven by the two parameters: + sortStrategy + and sortmap_field. If a sort field that does not have an equivalent @@ -271,7 +382,7 @@ conversion. It doesn't throw a diagnostic. - + TARGET PROFILE @@ -284,20 +395,21 @@ - authentication + authentication Authentication parameters to be sent to the target. For Z39.50 targets, this will be sent as part of the - Init Request. + Init Request. Authentication consists of two components: username + and password, separated by a slash. If this value is omitted or empty no authentication information is sent. - - - cclmap_* + + + cclmap_field This value specifies CCL field (qualifier) definition for some field. For Z39.50 targets this most likely will specify the @@ -307,7 +419,7 @@ - + cfAuth @@ -320,7 +432,7 @@ - cfProxy + cfProxy Specifies HTTP proxy for the target in the form host:port. @@ -329,14 +441,14 @@ - cfSubDb + cfSubDB Specifies sub database for a Connector Framework based target. - + contentConnector Specifies a database for content-based proxy'ing. @@ -355,7 +467,7 @@ element_raw from the configuration. By default that is the element sets pz2 and raw. - If record transform is not enabled, this setting is + If record transform is not enabled, this setting is not used and the element set specified by the client is passed verbatim. @@ -375,7 +487,7 @@ - + piggyback @@ -386,7 +498,7 @@ - + queryEncoding @@ -396,7 +508,7 @@ - + recordEncoding @@ -419,15 +531,16 @@ - - sortmap_ + + sortmap_field - This value the native field for a target. + This value the native field for a target. The form of the value is + given by sortStrategy. - - + + sortStrategy Specifies sort strategy for a target. One of: @@ -439,7 +552,7 @@ - + sru @@ -452,6 +565,16 @@ + sruVersion + + Specifies the SRU version to use. It unset, version 1.2 will be + used. Some servers do not support this version, in which case + version 1.1 or even 1.0 could be set it. + + + + + transform Specifies a XSL stylesheet filename to be used if record @@ -471,47 +594,141 @@ - + urlRecipe The value of this field is a string that generates a dynamic link - based on content. If the resulting string is non-zero in length - a new field, metadata with attribute - type=generated-url. The contents of this field is the result of the - URL recipe conversion. The urlRecipe value may refer to an existing - metadata element by ${field[pattern/result/flags]}, which will take content + based on record content. If the resulting string is non-zero in length + a new field, metadata with attribute + type="generated-url" is generated. + The contents of this field is the result of the URL recipe conversion. + The urlRecipe value may refer to an existing metadata element by + ${field[pattern/result/flags]}, which will take content of field and perform a regular expression conversion using the pattern given. For example: ${md-title[\s+/+/g]} takes - metadadata element title and converts one or more + metadata element title and converts one or more spaces to a plus character. - - If the contentConnector setting is defined the resulting value is - agmented with a session string as well as the content proxy server. - - + zurl This is setting is mandatory and specifies the ZURL of the target in the form of host/database. The HTTP method should - not be provide as this is guessed from the "sru" attribute value. + not be provided as this is guessed from the "sru" attribute value. + DATABASE parameters + + Extra information may be carried in the Z39.50 Database or SRU path, + such as authentication to be passed to backend etc. Some of + the parameters override TARGET profile values. The format is + + + udb,parm1=value1&parm2=value2&... + + + Where udb is the unique database recognised by the backend and parm1, + value1, .. are parameters to be passed. The following describes the + supported parameters. Like form values in HTTP the parameters and + values are URL encoded. The separator, though, between udb and parameters + is a comma rather than a question mark. What follows question mark are + HTTP arguments (in this case SRU arguments). + + + + user + + + Specifies user to be passed to backend. If this parameter is + omitted, the user will be taken from TARGET profile setting + + authentication + + . + + + + + password + + + Specifies password to be passed to backend. If this parameters is + omitted, the password will be taken from TARGET profile setting + + authentication + + . + + + + + proxy + + + Specifies one or more proxies for backend. If this parameter is + omitted, the proxy will be taken from TARGET profile setting + + cfProxy. + The parameter is a list of comma-separated host:port entries. + Bost host and port must be given for each proxy. + + + + + cproxysession + + + Session ID for content proxy. This parameter is, generally, + not used by anything but the content proxy itself. + + + + + nocproxy + + + If this parameter is specified, content-proyxing is disabled + for the search. + + + + + realm + + + Session realm to be used for this target, changed the resulting + URL to be used for getting a target profile, by changing the + value that gets substituted for the %realm string. + + + + + x-parm + + + All parameters that has prefix x, dash are passed verbatim + to the backend. + + + + + + SCHEMA - + EXAMPLES @@ -520,7 +737,7 @@ @@ -528,7 +745,7 @@ - + @@ -536,13 +753,14 @@ + ]]> - - - + + + SEE ALSO @@ -558,7 +776,7 @@ - + ©right;