220 likes | 563 Views
Z39 Server. DigiTool Version 3.0. z39 SERVER. Main Topics z39 server architecture z39 server services z39 server configuration Defining a new base for z39 server. z39 server - Logical Flow. z39 server accepts z39 requests. z39 server translates a request to DigiTool protocol.
E N D
Z39 Server DigiTool Version 3.0
z39 SERVER Main Topics • z39 server architecture • z39 server services • z39 server configuration • Defining a new base for z39 server
z39 server - Logical Flow • z39 server accepts z39 requests. • z39 server translates a request to DigiTool protocol. • DigiTool supplies back-end services (find/present/scan/sort etc…). • DigiTool services manipulate the data according to internal tables. • z39 server translates DigiTool’s response to z39 format and sends it back to the client.
z39 server architecture z39 gateway z39.50 - DigiTool Translation Z39.50 Protocol z39 Backend Server (PC Server) z39 server z39 client DigiTool Silo
Overview z39 server gets a request from z39.50 client, performs the request in your local databases and returns the response to the calling z39.50 client. z39 server implements the following z39.50 services: Init, Search, Sort, Present, Scan,
Overview Init service: z39 server gets the InitRequest message from the z39 client. If the message contains user name and password, z39 server stores them. (They will be used for access to your local database; by default user name z39 and password z39 will be used).
Overview Search service: z39 server gets the SearchRequest message from the z39 client. The message contains the database name, the z39 search query and the result set name. z39 server translates the z39 query to an DigiTool CCL query, searches the database and creates a result set with a given name. z39 server sends a SearchResponse message to the client. This message contains the number of hits. If an error occurred, the message contains error indication.
Overview Scan service: z39 server gets a ScanRequest message from z39 client. This message contains database name and z39 scan query. z39 server translates a z39 scan query to an DigiTool query and scans the database. z39 server sends a ScanResponse message to the client. The message contains the scan entries. If an error occurred, the message contains error indication.
Overview Sort service: z39 server gets a SortRequest message from the z39 client. The message contains database name, z39 sort query and result set name. z39 server translates the z39 query to an DigiTool query and performs a sort of the given set. z39 server sends a SortResponse message to the client. The message contains success/failure indication.
Overview Present service: z39 server gets a PresentRequest from the z39 client. The message contains database name, result set name, number of first record to retrieve, total number of records to retrieve and optional record format (USMARC, XML, SUTRS, MAB). z39 server retrieves the requested records and sends a PresentResponse message to the client. The message contains the retrieved records in the requested format. If an error occurred, the message contains error indication.
Overview All the processing is done using the pc_server. z39 server receives a request from a client. It translates the request from ‘z39 language’ to ‘DigiTool language’ and passes the translated request to the pc_server. The pc_server executes the request and passes the response to the z39 server. The z39 server translates the response from ‘DigiTool language’ to ‘z39 language’ and sends it to the client.
z39 server - Present Service The records may be returned in the following formats: USMARC, UNIMARC, XML, SUTRS, and MAB. If local database contains USMARC record – the records can be returned in USMARC, if local database is in UNIMARC – the records can be returned in UNIMARC, if local database is in MAB - the records can be returned in MAB.
z39 server Configuration The configuration files of the z39 server are under the dtle_tab/z39 server directory: There are 3 types of files: 1. z39 server.conf general z39 server parameters 2. z39 server <base>.conf translation of z39 attributes to DigiTool codes 3. z39 server_base record conversion parameters
z39 server Configuration 1. z39 server.conf The file contains general settings for the z39 server. Each setting should be defined in a separate line. There are mandatory settings and optional settings: The settings of the pc_server are mandatory: Syntax:hostname <host>:<port> where <host> is pc_server host and <port> is pc_server port. Examples: ‘hostname localhost:6881’ means that pc_server runs on local host on port 6881 ‘hostname ram42:6881’ means that pc_server runs on host ram42 on port 6881
z39 server Configuration z39 server.conf The following setting is optional: log record indication Syntax: marclog <marc log file name> logfile. This is useful for debugging purpose. Example: marclog my.log This means that the records are stored in a file called $TMPDIR/my.log
z39 server Configuration 2. z39 server.<base>conf For each base handled by the z39 server, you should define: z39 server_<base>.conf file, where <base> is base name: z39 server_GEN01.conf The file contains different setting definitions for working with a given base. Each setting should be defined in a separate line.
z39 server Configuration 2. z39 server.<base>conf The file may contain the following settings: • Translation of z39.50 User attributes to CCL codes: when z39 server gets a SearchRequest message, it translates the z39.50 Use attribute into DigiTool CCL code. The search in the DigiTool database is performed by this DigiTool CCL code. 2. Translation of z39.50 User attributes to Scan codes: when z39 server gets a ScanRequest message, it translates the z39.50 Use attribute into DigiTool Scan codes 3. Translation of z39.50 Use attribute and sort keywords into DigiTool Sort Codes.
z39 server User Authentication InitRequest has an optional parameter: idAuthentication. This parameter contains user and password. If the idAuthentication parameter in InitRequest is not empty, z39 server passes the received user and password to pc_server. If idAuthentication is empty, z39 server passes user = “z39” and password = “z39” to pc_server. pc_server authenticates the user as a regular DigiTool user. The user must have z39.50 user permissions for the requested collection. The permissions are defined in the staff privileges portion of the Meditor.
z39 server User Authentication This mechanism permits the administrator to grant access to a collection to all users or to specified users only. To grant access to all users: assign to the “z39” user “z39.50 users permissions” to the collection. z39.50 clients connecting to our z39 server must send empty idAuthentication in Init Request. To grant access to specified users: assign to specified users “z39.50 users permissions” for the collection. z39.50 clients connecting to your z39 server must send this user name and password in idAuthentication in Init Request.
z39 server Configuration How to add a new Base for z39 server Enter any collection environment (For example, dlib GEN01). Enter util/n/2 Use the menu options to edit z39 server configuration. To define new base, choose option ‘1. Add base’. Then enter base name. The name will be translated into upper case and the file dtle_tab/z39 server/z39 server_<base>.conf will be opened in vi. Edit this file.
Thank you! www.exlibrisgroup.com