Z39 Server

22
Z39 Server DigiTool Version 3.0

description

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. - PowerPoint PPT Presentation

Transcript of Z39 Server

Page 1: Z39 Server

Z39 Server

DigiTool Version 3.0

Page 2: Z39 Server

Z39 Server 2

z39 SERVER

Main Topics

z39 server architecture

z39 server services

z39 server configuration

Defining a new base for z39 server

Page 3: Z39 Server

Z39 Server 3

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.

Page 4: Z39 Server

Z39 Server 4

z39 Backend Server(PC Server)

DigiTool Silo

z39 server

z39 server architecture

z39 client

z39 gateway

Z39.50 Protocol

z39.50 - DigiTool Translation

Page 5: Z39 Server

Z39 Server 5

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,

Page 6: Z39 Server

Z39 Server 6

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).

Page 7: Z39 Server

Z39 Server 7

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.

Page 8: Z39 Server

Z39 Server 8

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.

Page 9: Z39 Server

Z39 Server 9

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

Page 10: Z39 Server

Z39 Server 10

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.

Page 11: Z39 Server

Z39 Server 11

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.

Page 12: Z39 Server

Z39 Server 12

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.

Page 13: Z39 Server

Z39 Server 13

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

Page 14: Z39 Server

Z39 Server 14

z39 server Configuration

1. z39 server.confThe 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

Page 15: Z39 Server

Z39 Server 15

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

Page 16: Z39 Server

Z39 Server 16

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.

Page 17: Z39 Server

Z39 Server 17

z39 server Configuration

2. z39 server.<base>confThe file may contain the following settings:

1. 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.

Page 18: Z39 Server

Z39 Server 18

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.

Page 19: Z39 Server

Z39 Server 19

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.

Page 20: Z39 Server

Z39 Server 20

z39 server User Authentication

Page 21: Z39 Server

Z39 Server 21

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.

Page 22: Z39 Server

Z39 Server 22

www.exlibrisgroup.com

Thank you!