Functional Specification in Terms of Z39.50-1995


Z3950-PRISE 2.0 supports four services (Init, Search, Present & Close) as outlined below.


3.2.1 Initialization Facility
3.2.1.1 Init Service
3.2.1.1.1 Version
Server: Accepts versions 1, 2 or 3 depending on zserver.spec
Client: Requests version specified in zclient.spec

3.2.1.1.2 Id/authentication
Server: Ignored
Client: Ignored

3.2.1.1.3 Options
Server: Init, Search, Present, and Close
Client: Init, Search, Present, and Close

3.2.1.1.4 Preferred-message-size and Exceptional-record-size
Server: Response defaults set via file
Client: Set via GUI

3.2.1.1.5 Result
Server: Supported
Client: Supported

3.2.1.1.6 Implementation-id, Implementation-name, and Implementation-version
Server: Set by zserver.spec
Client: Presence of "1.0" (id) and "NIST" (name) enables highlighting

3.2.1.1.7 User-information-field
Server: Returns blank-delimited list of database names
Client: Database name list from Zserver used to populate GUI database list

3.2.1.1.8 Other-information
Server: Ignored
Client: Ignored

3.2.1.1.9 Reference-id
Server: Returns request's if any
Client: Ignored


3.2.2 Search Facility
3.2.2.1 Search Service
3.2.2.1.1 Query-type and Query
Server: Supports Type-1(01) RPN Query (and parts of the experimental Type 102 Query)

The default query translator converts the query into a string of blank delimited terms each of which is an operand extracted (inorder) without regard to attributes from the query. All operators are ignored.

The PRISE-specific query translator converts the Z39.50 query into a PRISE query structure.

Client: Creates Type-1 or Type-101 RPN Query or minimal Type-102 query

If version 2 is in force and the query involves proximity, then a Type-101 RPN query is constructed; otherwise a Type-1 RPN query is created.

If version 3 is in force, the server is Z39.50/PRISE, and the user is engaged in relevance feedback, the client creates a Type-102 query (as of Sept `96) and embeds the Type-1 or Type-101 in the Type-102 as the "restriction".

3.2.2.1.2 Database-names
Server: Uses only the first if multiple requested
Client: Requests only one

3.2.2.1.3 Result-set-name and Replace-indicator
Server: Ignored - always (re)uses the same default result set
Client: Ignored

3.2.2.1.4 Small-set-element-set-names and Medium-set-element-set-name
Server: Full or Brief

Full = Document number + document title + document text

Brief = Document number + document title

Client: Full or Brief

Search request asks for Brief

When the user clicks on a document in the list returned by Search, the Full form of the document is presented.

3.2.2.1.5 Preferred-record-syntax
Server: Insists on SUTRS
Client: Supports only SUTRS

3.2.2.1.6 Small-set-upper-bound, Large-set-lower-bound, and Medium-set- present-number
Server: Response defaults set via file
Client: Request defaults set via file

3.2.2.1.7 Response-records
Server: Supported, including v1,2,3 (non)surrogate diagnostic records
Client: Supported, including v1,2,3 (non)surrogate diagnostic records

3.2.2.1.8 Result-count and Number-of-records-returned
Server: Supported, Number-of-records_returned includes non-surrogate diagnostic(s)
Client: Supported

3.2.2.1.9 Next-result-set-position
Server: Supported
Client: Supported

3.2.2.1.10 Search-status
Server: Supported
Client: Supported

3.2.2.1.11 Result-set-status and Present-status
Server: Supported.

Result-set-status is meaningful if and only if the value of Search-status is 'failure', in which case its value is one of the following:

subset
Partial, valid results available.
none
No result set

Present-status is meaningful if and only if the value of Search-status is 'success', in which case Present-status's value is one of the following:

success
All of the expected response records are available

partial-2
Not all of the expected response records can be returned because they will not fit within the response

failure
None of the expected response records can be returned. One or more non-surrogate diagnostic records is returned (see note in 3.2.2.1.7).
Client: Supported

3.2.2.1.12 Additional-Search-Information
Server: Used, if present, to set number-of-records-wanted for Prise
Client: Sends maximum number of records to be returned

3.2.2.1.13 Other-information
Server: Ignored
Client: Ignored

3.2.2.1.14 Reference-id
Server: Response contains request's Reference-id, if any
Client: Supplies Reference-ids to support certain operations and expects the server to return these, otherwise operations will not complete successfully.


3.2.3 Retrieval Facility
3.2.3.1 Present Service
3.2.3.1.1 Number-of-records-requested and Result-set-start-position
Server: Supported
Client: Request defaults set via GUI

3.2.3.1.2 Additional-ranges
Server: Ignored
Client: Not used

3.2.3.1.3 Result-set-id
Server: Ignored
Client: Ignored

3.2.3.1.4 Element-set-names
Server: Full or Brief if specified otherwise defaults to Brief
Client: Full (for presents to the document window; Brief on search/presents to the document list window

3.2.3.1.5 Preferred-record-syntax
Server: Ignored, insists on SUTRS
Client: Only SUTRS supported

3.2.3.1.6 Comp-spec
Server: Ignored
Client: Ignored

3.2.3.1.7 Max-segment-count, Max-segment-size, and Max-record-size Max- segment-count
Server: Ignored, segmentation is not supported
Client: Ignored

3.2.3.1.8 Response-records
Server: Supported, including v1,2,3 (non)surrogate diagnostic records
Client: Supported, including v1,2,3 (non)surrogate diagnostic records

3.2.3.1.9 Number-of-records-returned and Next-result-set-position
Server: Supported
Client: Supported

3.2.3.1.10 Present-status
Server: Supported.

Present-status is meaningful if and only if the value of Search-status is 'success', in which case its value is one of the following:

success
All of the expected response records are available
partial-2
Not all of the expected response records can be returned because they will not fit within the response
failure
None of the expected response records can be returned. One or more non-surrogate diagnostic records is returned (see note in 3.2.2.1.7).
Client: Supported

3.2.3.1.11 Other-information
Server: Ignored
Client: Ignored

3.2.3.1.12 Reference-id
Server: Response contains request's Reference-id, if any
Client: Supplies Reference-ids to support certain operations and expects the server to return these, otherwise operations will not complete successfully.

3.2.11 Termination Facility
3.2.11 Close Service
3.2.11.1.1 Close-reason
Server: Returns a close response only in response to a Close request - does not currently issue Close request
Client: Issues close request when user exits, aborts a search, or changes servers

3.2.11.1.2 Diagnostic-information
Server: Supported
Client: Ignored

3.2.11.1.3 Resource-report-format and Resource-report
Server: Ignored
Client: Ignored

3.2.11.1.4 Other-information
Server: Ignored
Client: Ignored

3.2.11.1.5 Reference-id
Server: Returns Request's if any
Client: Ignored

Last modified: 10. May 1996