X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=doc%2Fzoom.xml;h=0a5700a2d3ec93e7e9bd706067de84747827e61c;hb=fa4910b8543b112f2afc2d92b4f959bce7943b5f;hp=7802331e354ca4cb93637dd9d6f7518c3344e515;hpb=6d37b7dda0348943459c50c0cfedf271b3722bb0;p=metaproxy-moved-to-github.git
diff --git a/doc/zoom.xml b/doc/zoom.xml
index 7802331..0a5700a 100644
--- a/doc/zoom.xml
+++ b/doc/zoom.xml
@@ -18,7 +18,7 @@
zoom
- Metaproxy Package ZOOM Module
+ Metaproxy ZOOM Module
DESCRIPTION
@@ -28,8 +28,249 @@
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
+ is selected based on the database as part of this search and
+ not as part of init.
+
+
+
+ This filter is an alternative to the z3950_client filter but also
+ shares properties of the virt_db - in that the target is selected
+ for a specific database
+
+
+
+ The ZOOM filter relies on a target profile description, which is
+ XML based. It picks the profile for a given database from a web service
+ or it may be locally given for each unique database (AKA virtual database
+ in virt_db). Target profiles are directly and indrectly given as part
+ of the torus element in the configuration.
+
+
+
+
+ CONFIGURATION
+
+ The configuration consists of three parts: torus,
+ fieldmap and cclmap.
+
+
+ The torus element specifies target profiles
+ and takes the following content:
+
+
+ attribute 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.
+
+
+
+ attribute xsldir
+ Directory that is searched for XSL stylesheets. Stylesheets
+ are specified in the target profile by the
+ transform element.
+
+
+
+ element records
+ Local target profiles. This element may includes zero or
+ more record elements (one per target
+ profile). See section TARGET PROFILE.
+
+
+
+
+
+ The fieldmap may be specified zero or more times and
+ specifies the map from CQL fields to CCL fields and takes the
+ following content:
+
+
+ attribute cql
+ CQL field.
+
+
+
+ attribute ccl
+ CCL field.
+
+
+
+
+
+ The final part of the configuration consists of zero or more
+ cclmap elements that specifies a base
+ CCL profile to be used for all targets. This configuration, thus, will
+ be combined with cclmap-definitions from the target profile.
+
+
+ QUERIES
+
+ The ZOOM filter accepts three query types: RPN(Type-1), CCL and
+ CQL.
+
+
+ Queries are converted in two separate steps. In the first step
+ the input query is converted to RPN/Type-1. This is always
+ the common internal format between step 1 and step 2.
+ In step 2 the query is converted to the native query type of the target.
+
+
+ Step 1: for RPN, the query is passed unmodified to the target.
+
+
+ Step 1: for CCL, the query is converted to RPN via
+ cclmap elements part of the target profile.
+
+
+ Step 1: For CQL, the query is converted to CCL. The mappings of
+ 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).
+
+
+ Step 2: If the target is Z39.50-based, it is passed verbatim (RPN).
+ If the target is SRU-based, the RPN will be converted to CQL.
+ If the target is SOLR-based, the RPN will be converted to SOLR's query
+ type.
+
+
+
+ TARGET PROFILE
+
+ The following elements are honored by the ZOOM module of Metaproxy.
+ Note that unknown elements are silently ignored. There are several
+ elements in use that makes no sense to the ZOOM module.
+
+
+
+ authentication
+
+ Authentication parameters to be sent to the target. For
+ Z39.50 targets, this will be sent as part of the
+ Init Request.
+
+
+ If this value is omitted or empty, not authentication information
+ is simply omitted.
+
+
+
+
+
+ piggyback
+
+ A value of 1/true is a hint to the ZOOM module that this Z39.50
+ target supports piggyback searches, ie Search Response with
+ records. Any other value (false) will prevent the ZOOM module
+ to make use of piggyback (all records part of Present Response).
+
+
+
+
+
+ queryEncoding
+
+ If this value is defined, all queries will be converted
+ to this encoding. This should be used for all Z39.50 targets that
+ do not use UTF-8 for query terms.
+
+
+
+
+
+ udb
+
+ This value is required and specifies the unique database for
+ this profile . All target profiles should hold a unique database.
+
+
+
+
+
+ cclmap_*
+
+ This value specifies CCL field (qualifier) definition for some
+ field. For Z39.50 targets this most likely will specify the
+ mapping to a numeric use attribute + a structure attribute.
+ For SRU targets, the use attribute should be string based, in
+ order to make the RPN to CQL conversion work properly (step 2).
+
+
+
+
+
+ elementSet
+
+ Specifies the elementSet to be sent to the target if record
+ transform is enabled (not to be used with the record_transform
+ module). The record transform is enabled only if the client uses
+ record syntax = XML and element set =
+ pz2. If record transform is not enabled, this
+ setting is not used and the element set specified by the client
+ is passed verbatim.
+
+
+
+
+
+ recordEncoding
+
+ Specifies the character encoding of records that are returned
+ by the target. This is primarily used for targets were records
+ are not UTF-8 encoded already. This setting is only used
+ if the record transform is enabled (see description of elementSet).
+
+
+
+
+
+ requestSyntax
+
+ Specifies the record syntax to be specified for the target
+ if record transform is enabled; see description of elementSet.
+ If record transform is not enabled, the record syntax of the
+ client is passed verbatim to the target.
+
+
+
+
+
+ sru
+
+ If this setting is set, it specifies that the target is web service
+ based and must be one of : get,
+ post, soap
+ or solr.
+
+
+
+
+
+ transform
+
+ Specifies a XSL stylesheet filename to be used if record
+ transform is anabled; see desciprion of elementSet.
+
+
+
+
+
+ zurl
+
+ This is setting is mandatory and specifies the ZURL of the
+ targetin the form of host/database.
+
+
+
+
-
SCHEMA