NCSA
emerge@ncsa.uiuc.edu

Gazelle Configuration File Overview

The gazelle configuration file serves two purposes. The first is to specify how the gazelle daemon itself will run. The second is to define how incoming Z39.50 search requests get mapped into the form required by the target application.

The configuration file is coded using XML. The file name is read from the command line using the "-c" option:

gazelled -c myConfig.xml If no file is specified the program tries to read the default configuration file "gazelled.xml" in the working directory of the program environment. If the configuration file doesn't exist, can't be read, or doesn't contain compliant XML code the program exits with an error condition.

Daemon Configuration

Parameters defined at the top level of the configuration file (outside of any database tags) are passed into the target_connect() function in the target API. There are several parameter names that are predefined: port, type, debug, errorlog, accesslog, debuglog. See the Gazelle Configuration Reference for details.

Parameters defined inside a database tags are passed into the target_search() function of the target API. These can include anything necessary for the target database to be accessed, for example a host name and port to connect to, etc.

Query Translation Configuration

Query translation is accomplished by creating a correspondence between incoming Z39.50 search requests and the target database query format. attr tags relate Z39.50 attributes to variables in the target query language, term tags are used to construct relational terms out of attributes, and template tags are used to put together larger expressions using named patterns. The format and uses of the various query translation tags can be found in the Gazelle Configuration Reference.

Currently only an expression clause, along with any static or constant strings specified in the template tags, is built and passed to the API target_search function. Any additional functionality must be written into the target API functions. In a later release, entire queries can be specified using the configuration file alone.