Contributions > Descriptions of Standards > Z39.50 Login
  Minimize
 
 
  Print  Minimize
Name
 
  • Z39.50
Service Genre
 
Description
 

The z39.50 protocol is a Basic Encoding Rules (BER) encoded protocol defined in Abstract Syntax Notation One (ASN.1) terms which allows a source system (origin) to conduct a request-response conversation (operation) with a remote system (target).

The protocol defines a number of messages for connecting and authenticating (init), performing search (search) and sort (sort) operations, requesting result records (present) and deleting result sets (delete), and finally the close operation (close) to terminate an association.

Some protocol services can be reused in different ways, for example discovering information about the remote system (explain) uses the search service and a special collection name. A number of additional control messages including browse, access control, resource control, and a general extended service mechanism. The protocol is considered to be ‘stateful’ in the sense that server side objects such as result sets persist (notionally at least) between user requests and for the duration of the session (association).

The protocol itself is extensible in terms of support for alternate query formats, although the Reverse Polish Notation (RPN) Tree is the most commonly supported and widely deployed. RPN Trees are capable of describing arbitrarily complex queries in a context free way. These queries are then interpreted by target systems to map on to whatever storage engine is used in the implementation. Common implementations are b-tree inverted index based systems and relational database hosted systems.

Requests & Behaviours
 

The following gives an outline of the basic z39.50 services, but the standard document itself should be consulted as the authoritative reference.

  • Init Service – Allows an origin to connect and optionally authenticate. Returns information about the services supported by the target.
  • Search Service – Allows an origin to submit a query to the target, and be notified when the search is complete (returning a result count, optional piggyback response records, and other search state information). Creates an (optionally named) Result Set at the target.
  • Present Service – Allows an origin to request result records from a target result set.
  • Segment Service – Allows control over large result record presentation.
  • Delete Service – Allows the origin to request that the target delete a result set.
  • Access-control Service – Allows the target to challenge the origin.
  • Resource-control Service – Allows origin and target to exchange information about the environment, pre-agreed service limits, status reports, etc.
  • Trigger-resource-control Service – As above.
  • Resource-report Service – As above.
  • Sort Service – Allows an origin to request the target sort a given result set.
  • Scan Service – Allows an origin to browse the indexes of the host system.
  • Extended-Service Service – Extensible service that allows implementers to provide services not defined by the protocol, common extensions include tight integration with document request / delivery systems, persistent result set management, etc.
  • Close Service – Allows origin and target to close the association
Use & Interactions
 

 

Interface Definition
 

ANSI/NISO Z39.50-2003

Information Retrieval: Application Service Definition & Protocol Specification
http://www.niso.org/standards/standard_detail.cfm?std_id=465

Structure
 

 

Functionality
 

 

Implementation Guidance & Dependencies
 

 

Usage Scenarios
 

 

Applicable Standards
 

ANSI/NISO Z39.50 / ISO 23950

Known Uses
 

 

Design Tradeoffs
 

 

Service Expression Dependencies
 

 

Related Service Expressions
 

 

Relates Service Usage Models (SUMs)
 

 

Related CORE SUMs
 

 

Classification
 

Component Status

[ ] Placeholder

 

[ ] Approved 

[X] Unapproved

[ ] Withdrawn

[ ] Superseded

Domain

[ ] Learning

[ ] IT Services

[ ] Research

[ ] Libraries

[ ] Administration

[X] Common

 

Development Status

[ ] Proposed

[ ] Developmental  

[ ] Prototype

[X]  Production

Deployment Scale

[ ] Isolated

[X] Widespread

 

 

Maturity

[ ] Immature

[X] Mature

 

 

Confidence

[ ] High

[X] Medium

[ ] Low

 

State Behaviour

[X] Stateful

[ ] Stateless

 

 

Transactional Behaviour

[X] Transactional / ACID

[ ] Transactional / non-ACID

[ ] Non-Transactional

 

Batch Behaviour

[ ] Individual

[X] Batch

 

 

Time Constraint Behaviour

[ ] Hard Real Time

[X] Soft Real Time

[ ] None

 

Service End Point

[ ] Provider

[ ] Requestor

[X] Transcoder

 

Auth’ed

[X] Auth’ed

[ ] Non-Auth’ed

 

 

Protocol Binding

[ ] Web Service

[ ] Other

[ ] SOAP

[ ] REST

[X] HTTP

Service Genre Coverage

[X] Full

[ ] Extended

[ ] Subset

[ ] Overlapping

Status
 

Pending

e-Framework Version
 

1.0

Date Submitted
 

 

Date Updated
 

2007-03-01

Author
 

Neil Smith, Mike Collett

Organisation Affiliation
 


Last updated 30 January 2008

 

 
  Minimize
Unless otherwise noted material from the e-Framework website can be downloaded for your own use under a Creative Commons Attribution-ShareAlike 2.5 Australia License
CreativeCommons-by-sa.png
 
Friday, December 05, 2008
Copyright e-Framework Partners 2006 - 2008

Terms and Conditions

Privacy Statement