What is Z39.50?
Z39.50 is an international information retrieval standard (ISO 23950) which enables one computer to speak to another in order to find and obtain information. In basic terms, it means that you can search and retrieve information from any Z39.50 compliant database using your own Z39.50 compliant system.
LA Search is compliant with the Z39.50 protocol. The Libraries Australia Z39.50 Gateway (or ‘Z-Gateway’) supports access to ANBD bibliographic and authority files as well as many other databases, enabling you to download and save records then directly import them into your system. Please note that this is ‘screen capture’, not downloading in the usual sense of the word. That is, you cannot update records or add, modify, or delete holdings before you import them into your catalogue using Z39.50. Any manipulation of the record must be carried out in your local system.
The Libraries Australia Z39.50 service is available to all Libraries Australia subscribers free of charge, and searching of most of the Z39.50 databases offered via the Z-Gateway is also free to our members. Members wishing to connect to our Z-Gateway need to configure their library management system (LMS) according to our Z39.50 Configuration Guide.
Z39.50 targets
Click on the links to view the connection details.
Bibliographic databases
- ANBD (Australian National Bibliographic Database)
- OCLC WorldCat:
- British Library Catalogue
- CISTI (Canada Institute for Scientific & Technical Information)
- Chinese University of Hong Kong
- Copac: the UK & Irish Academic & National Library Catalogue
- Hong Kong University of Science & Technology
- Library of Congress Catalogue
- Te Puna: the New Zealand National Bibliographic Database
- University of Hong Kong
- Academia Sinica (Taiwan)
- Waseda University (Japan)
Authority databases
- Libraries Australia Authorities:
- OCLC WorldCat Authorities:
Z39.50 Configuration Guide
This Configuration Guide contains technical specifications for connecting a Z39.50 client to the Libraries Australia Z39.50 server to use our Z39.50 Service.
How to connect – first time users
Step 1. Test your connection via our Test Service:
Before being issued with a Z39.50 login, you must successfully connect to the Libraries Australia test database (click on link for connection details), carry out some searches and save some records.
Step 2. Apply for a Z39.50 username and password:
Once you have successfully accessed and searched the test database, contact the Help Desk explaining that you have successfully connected to the test database and a Z39.50 username and password will be issued for access to the Libraries Australia production database.
Step 3. Connect to our Production Service:
To connect to the Libraries Australia production database, you will need to connect to our Port 1821 (USMARC) or 210 (UNICODE) depending on your system capability. Please click on the link for full connection details.
Step 4. Configure your Bib-1 Search Attributes (if required):
Depending on your ILM system, you may need to configure your Bib-1 Search Attributes by referring to our table in our Advanced Guide below. Please note that some attributes are only valid in the ANBD database, whilst others are only applicable to Libraries Australia Authorities. The advanced guide provides detailed information for Z39.50 client developers and implementers to access and interoperate with our Z-Gateway. The Advanced Guide assumes a general familiarity withZ39.50.
Advanced Guide (for Z39.50 client developers & implementers)
The Libraries Australia Z39.50 server will conform to Z39.50-1995 (Version 3). A subset of attributes from the Bib-1 Attribute Set will be supported, and codes from the Bib-1 Diagnostic Set are also used. The server will have the following level of compliance with The Bath Profile:
- Functional Area A (Bibliographic Search & Retrieval) to Level 2.
- Functional Area B (Holdings Search & Retrieval) to Level 0.
- Functional Area C (Cross-Domain Search & Retrieval) to Level 0.
- Functional Area D (Authority Record Search & Retrieval) to Level 1.
The Libraries Australia server will support the following services: Initialisation (below), Search, Present, Delete, Scan, Sort, Named result sets, Explain.
Initialisation service
|
Protocol version:
|
Z39.50-1995 (Version 3)
|
|
Options supported:
|
Search
|
| Present | |
| Delete | |
| Scan | |
| Sort | |
| Named result sets | |
| Explain | |
| ID authentication: | Production: A valid Libraries Australia username and password are required. Please contact the Help Desk for allocation. |
|
Test: click here for username/password.
|
|
| Training: A valid Libraries Australia username and password are required. Please contact the Help Desk for allocation. |
Search service
|
Result set name:
|
Named result sets are supported.
|
| Database names: | Database names are case-insensitive. Multiple databases can be searched subject to the capabilities of your local system. |
| Element set names: | Libraries Australia supports element set naming and will return Brief(B) and Full (F) records, and element sets used for sorting: TI(Title),NA(Author) and DAT(Date of Publication in the bibliographic database and Date of Entry in the authority database). |
| Query: | Type-1 (RPN), Type-101 and CCL queries are supported. The maximum length of a search term is 2000 characters. |
| Attribute set: | Bib-1 only is supported. |
| Operand: | The Result set ID can be used in the Operand (for qualifying searches). |
| Operators supported: | AND, OR, AND NOT, Proximity operators WITH and SAME. |
Scan service
| Database names: | Database names are case-insensitive. |
| Step size: | The Libraries Australia server always uses a step-size of 0. |
| Position of term: | The Libraries Australia server positions the scanned for term in the middle of the returned list of terms. |
| All other fields behave exactly as prescribed by the standard. | |
Sort service
Supports sorting on any of the Search attributes defined in Scan – Use attributes supported and the element sets TI (Title), NA (Author) and DAT (Date of Publication). Element set sorts excludes non-filing characters.
Result sets of 10,000 records or fewer can be sorted. Sort performance is slower with large result sets.
If no sort is requested, the default result set order is in database number (AN) order.
Record Syntaxes supported
Internally Libraries Australia stores data in MARCXML format conforming to the MARC 21 standard. If no preferred record syntax is applied, the Libraries Australia server defaults to MARC21 to support the widest range of Z39.50 clients.
For best performance we recommend that you limit present requests to 20 records at a time. Although larger values are permitted, response times may suffer.
The SUTRS, MARCXML in GRS-1, and XML record syntaxes are also supported. If a SUTRS record is requested, Libraries Australia will supply a record similar to MARC 21 in the appropriate format. If a GRS-1 record is requested,Libraries Australia will supply a record in MARCXML format.
|
Value
|
Description
|
|---|---|
| 10 | MARC-21 |
| 101 | SUTRS -Simple Unstructured Text Record Syntax, for plain text records. |
| 105 | GRS-1 – Generic Record Syntax; unstructured multi-purpose record syntax. |
| 109.1 | XML |
Database Names supported
The ANY and AU database names are maintained for backward compatibility reasons. The new names of Bibliographic and Authority are also supported on the production and test servers.
|
Value
|
Description
|
|---|---|
| Bibliographic (or ANY) | Australian National Bibliographic Database (ANBD) [Production and Test servers] |
| Authority (or AU) | Libraries Australia Authorities Database [Production and Test servers] |
| BibTraining | ANBD Training Database [Training server] |
| AuthTraining | Libraries Australia Authorities Training Database [Training server] |
Bib-1 search attributes supported
(D) indicates server default value. (DW) is the default when the structure is 2-Word.
Default behaviour for text indexes is Position= 3 (Any),Structure= 1 (Phrase).
| Use | Relation | Position | Structure | Truncation | Completeness |
|---|---|---|---|---|---|
| 4-Title | 3-Equal(D) | 1-First in field 3-Any (D) |
1-Phrase(D) 2-Word |
1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) 3-Complete field |
| 5 – Series Not valid in Authority (AU)database |
3-Equal(D) | 1-First in field 3-Any (D) |
1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) 3-Complete field |
| 7-ISBN | 3-Equal(D) | 1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 8-ISSN | 3-Equal(D) | 1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 9-LC control number | 3-Equal(D) | 1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 12-Australian ANBD number | 3-Equal(D) | 1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) 3-Complete field |
| 13-Dewey classification | 1-Less than 2-Less than orequal 3-Equal(D) 4-Greater or equal 5-Greater than |
1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 14-Universal Decimal classification Not valid in Authority (AU) database |
1-Less than 2-Less than orequal 3-Equal(D) 4-Greater or equal 5-Greater than |
1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 16-LC classification | 1-Less than 2-Less than orequal 3-Equal(D) 4-Greater or equal 5-Greater than |
1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 17-NLM classification | 1-Less than 2-Less than orequal 3-Equal(D) 4-Greater or equal 5-Greater than |
1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 20 – Classification | 1-Less than 2-Less than orequal 3-Equal(D) 4-Greater or equal 5-Greater than |
1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 21-Subject heading | 3-Equal(D) | 1-First in field 3-Any (D) |
1-Phrase(D) 2-Word |
1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) 3-Complete field |
| 31-Date of publication Not valid in Authority(AU) database |
1-Less than 2-Less than orequal 3-Equal(D) 4-Greater or equal 5-Greater than |
1-First in field(D) | 2-Word | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 47-Subject subdivision* | 3-Equal(D) | 1-First in field 3-Any (D) |
1-Phrase(D) 2-Word |
100-Do not truncate(D) 101-Process # in term |
1-Inc. subfield(D) 3-Complete field |
| 51-Music publisher number Not valid in Authority (AU) database |
1-Less than 2-Less than orequal 3-Equal(D) 4-Greater or equal 5-Greater than |
1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 54-Language Not valid in Authority (AU)database |
3-Equal(D) | 1-First in field(D) | 2-Word | 100-Do not truncate(D) | 1-Inc. subfield(D) |
| 55-Geographic area code | 3-Equal(D) | 1-First in field(D) | 2-Word | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 56-ILL library symbol Not valid in Authority(AU) database |
3-Equal(D) | 1- First in field | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 59-Country/State/ Province Not valid in Authority (AU) database |
3-Equal(D) | 1-First in field(D) | 2- Word | 100-Do not truncate(D) 101-Process # in term |
1-Inc. subfield(D) |
| 60-CODEN Not valid in Authority (AU)database |
1-Less than 2-Less than orequal 3-Equal(D) 4-Greater or equal 5-Greater than |
1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 63-Note | 3-Equal(D) | 3-Any (D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 1001 or 1031-Material type | 3-Equal(D) | 1-First in field(D) | 2-Word | 100-Do not truncate(D) | 1-Inc. subfield(D) |
| 1003-Name | 3-Equal(D) | 1-First in field 3-Any (D) |
1-Phrase(D) 2-Word |
1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) 3-Complete field |
| 1004-Personal nameValid in Authority (AU)database only | 3-Equal(D) | 1-First in field 3-Any (D) |
1-Phrase(D) 2-Word |
1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) 3-Complete field |
| 1005-Corporate name Valid in Authority (AU)database only |
3-Equal(D) | 1-First in field 3-Any (D) |
1-Phrase(D) 2-Word |
1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) 3-Complete field |
| 1006-Conference / meeting name Valid in Authority (AU) database only |
3-Equal(D) | 1-First in field 3-Any (D) |
1-Phrase(D) 2-Word |
1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) 3-Complete field |
| 1007 – Standard Identifier Not valid in Authority (AU) database |
3-Equal(D) | 1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 1011 – Date of entry | 1-Less than 2-Less than orequal 3-Equal(D) 4-Greater or equal 5-Greater than |
1-First in field(D) | 100 -Date un-normalised | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 1012 – Time/Date of Last Transaction | 1-Less than 2-Less than orequal 3-Equal(D) 4-Greater or equal 5-Greater than |
1-First in field(D) | 5-Date | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 1016-Any | 3-Equal(D) | 1-First in field 3-Any (D) |
1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 1018-Publisher name Not valid in Authority(AU) database |
3-Equal(D) | 1- First in field 3-Any (D) |
1-Phrase(D) 2-Word |
1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) 3-Complete field |
| 2004-Other control number Not valid in Authority (AU) database |
3-Equal(D) | 1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 2005-ISMN Not valid in Authority (AU)database |
3-Equal(D) | 1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 2006-Other classification | 3-Equal(D) | 1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 2009-Immutable number | 3-Equal(D) | 1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
| 2023-Country/State/ Province Not valid in Authority (AU) database |
3-Equal(D) | 1-First in field(D) | 2- Word | 100-Do not truncate(D) 101-Process # in term |
1-Inc. subfield(D) |
| 2024-Australian content indicator | 3-Equal(D) | 1-First in field(D) | 2- Word | 100-Do not truncate(D) | 1-Inc. subfield(D) |
| 2025 – Form of item | 3-Equal(D) | 1-First in field(D) | 2-Word | 100-Do not truncate(D) | 1-Inc. subfield(D) |
| 2026-Government publication | 3-Equal(D) | 1-First in field(D) | 2-Word | 100-Do not truncate(D) | 1-Inc. subfield(D) |
| 2073-Bibliographic level Not valid in Authority (AU) database |
3-Equal(D) | 1-First in field(D) | 2-Word | 100-Do not truncate(D) | 1-Inc. subfield(D) |
| 2100-Conference / meeting code Not valid in Authority (AU) database |
3-Equal(D) | 1-First in field(D) | 2-Word | 100-Do not truncate(D) | 1-Inc. subfield(D) |
| 2146 – Series Type | 3-Equal(D) | 1-First in field(D) | 2-Word | 100-Do not truncate(D) | 1-Inc. subfield(D) |
| 2277 – Local system number | 3-Equal(D) | 1-First in field(D) | 1-Phrase(D) | 1-Right Truncation 100-Do not truncate(D) 101-Process #in term |
1-Inc. subfield(D) |
Scan – Use Attributes Supported
|
Value
|
Description
|
|---|---|
| 4 | Title |
| 7 | ISBN |
| 8 | ISSN |
| 9 | LC control number |
| 13 | Dewey classification |
| 14 Not valid in Authority (AU) database | UDC classification |
| 16 | LC classification |
| 17 | NLM classification |
| 21 | Subject heading |
| 33 Not valid in Authority (AU) database | Key title |
| 51 Not valid in Authority (AU) database | Music publisher number |
| 60 Not valid in Authority (AU) database | Coden |
| 1003 | Name |
| 1004 Only valid in Authority (AU) database | Personal name |
| 1005 Only valid in Authority (AU) database | Corporate name |
| 1006 Only valid in Authority (AU) database | Conference/meeting name |
| 2005 Not valid in Authority (AU) database | ISMN |
| 2006 Not valid in Authority (AU) database | Other classification |
Note: Because of the way data is being normalised, all text field scans must be entered in upper case. Currently, subject headings must be scanned with no hyphens between subfields, just one space. Scans on text fields thatreturn extremely long headings will cause an error message to be displayed. Scans on Personal name and Corporate name are being directed to the keyword index (Dec 2004). Add @attr 3=1 to overcome this problem.
Relation Attributes Supported
| Value |
Description
|
Example
|
|---|---|---|
|
1
|
Less than | dat < 1990 retrieves items published before 1990 |
|
2
|
Less than or equal | dat <= 1990 retrieves items published up to and including1990 |
|
3
|
Equal | dat = 1990 retrieves items published in 1990 |
|
4
|
Greater than or equal | dat >= 1990 retrieves items published in and after1990 |
|
5
|
Greater than | dat > 1990 retrieves items published after 1990 |
Position Attributes Supported
|
Value
|
Description
|
Definition
|
|---|---|---|
|
1
|
First in field | The search term must be the first data in the field. Ex. A search for ti dog where position=1 retrieves the item ‘Dog and cat’, but not’Cat and dog’. |
|
3
|
Any position in field | The search term may appear in any position in the field. It is supported for use in relation to 4,21,63,1003,1016,1018 only. |
Structure Attributes Supported
|
Value
|
Name
|
Definition
|
|---|---|---|
|
1
|
Phrase | One or more groups of characters separated by spaces. Therecords retrieved will contain the group(s) of characters exactly as theyappear in the search term with respect to order and adjacency. |
|
2
|
Word | One group of characters with no spaces. It is the exact text ofthe value to be searched. |
|
5
|
Date (normalised) | The day, month, year and time when a transaction or event takesplace. To be used with use attributes 1011 and 1012. |
|
100
|
Date (un-normalised) | The day, month and year when a transaction or event takesplace. The un-normalised search term is unstructured. |
Truncation Attributes Supported
| Value |
Name
|
Definition
|
|---|---|---|
|
1
|
Right truncate | The last word of the search term is right truncated. Ex.creat? searches for create, created, creation, etc. |
|
2
|
Left truncate | The first word of the search term is left truncated. E.g.?istan searches for Pakistan, Afghanistan etc. |
|
100
|
Do not truncate | No truncation is applied to the search term. |
|
101
|
Process # in search term | Process “#” in search term to replace exactly 1 character.Use “?” to replace 1 or more characters. |
Completeness Attributes Supported
| Value | Name | Definition |
|---|---|---|
|
1
|
Incomplete subfield | Words other than those in the search term may appear in the subfield or field in which the term appears. |
|
3
|
Complete field | No words other than those in the search term should appear in the entire field in which the term appears. |
Note: currently defaults to Complete field unless Position=1 (Firstin field) is defined.
Mandatory & Default Attributes
The Use attribute is mandatory. For the remaining attributes, if an attribute type and value is not supplied by the Z39.50 Client, the following defaults will be applied in Libraries Australia:
|
Attribute
|
Default value
|
|---|---|
| Relation | Equal (value=3) |
| Position | First in field (value=1) (This becomes 3-Any when Structure is set to 2-Word) |
| Structure | Phrase (value=1) |
| Truncation | Do not truncate (value=100) |
| Completeness | Incomplete subfield (value=1) |
