Australian Spatial Data Infrastructure logo
Header image.

Australian Spatial Data Directory (ASDD)

Site search:
home | about | feedback
Modified: 2009-12-07

Testing Isite ASDD nodes


Valid metadata

If you are serving collections of XML documents with the Isearch ANZMETA doctype then the indexing phase will have reported most problems with your data, such as invalid date fields or not the correct keywords. Prior to that you would have ensured that your XML documents do pass the tests for structure and content of a validating parser. If you are using a document management system or well-designed relational database and you have validated your resulting XML records using a reliable XML parser then you will know that your data is good.

A helpful tool for validating ANZMETA XML document instances is available at URL: http://www.ga.gov.au/bin/asdd/validateXHTML.pl".

Initial testing using "Isearch"

Each of the test methods described in this document apply equally to XML document collections that are indexed using an Isearch "doctype" and to relational database connections.

When you have an Isite index prepared (as described in Upgrading existing ASDD Isite nodes or Implementing new ASDD nodes: Isite on UNIX) then you can carry out some initial testing.

Isite has a command-line application called "Isearch" (enter "Isearch" with no parameters for help on usage). Conduct some simple searches to ensure that the index has been correctly built and is searchable. You do not need to have the Zserver running. Isearch will simply interrogate the specified index directly and will present a list of titles which match your search criteria. If you ask to see a "full" document then Isearch will present the relevant plain-text file.

Introduction to testing Isite Zserver

The Isite package provides a number of ways to conduct queries directly against the Zserver without going through a WWW gateway interface. Isite includes the command-line Z39.50 clients "zclient" and "izclient" (text-based interactive client). There is also the "zbatch" program to run a number of pre-prepared queries. The "zping" program is useful for regularly testing that the Zserver is alive and responding. A similar program called ZAP is used (from within a wrapper program) to regularly interrogate all ASDD nodes and produce the "Status of ASDD nodes" page. There are also many third party Z39.50 client software - see the Client and Web Gateway Surveys at DSTC and the Clients at CNIDR.

Ensure Zserver is alive using "zping"

When you have the Zserver running (as described in Upgrading existing ASDD Isite nodes or Implementing new ASDD nodes: Isite on UNIX) then you need to check that the Zserver is responding. Isite has a command-line client called "zping" (enter "zping" with no parameters for help on usage). This client will connect to the specified host and attempt to initialise the Zserver on the specified port. You will either be told that the Zserver is "alive" or you will receive a "no response" message. You should use zping from a different machine, and preferably outside your local network, to ensure that the Zserver is truly accessible from the Internet through your firewall.

Conduct initial searches using "izclient"

Now that you are sure that the Zserver is alive, you can conduct some initial searches. Isite has two command-line search clients, "zclient" and "izclient". The former is a simple client and the latter is an interactive client with text-based menus. Searches with these clients will be conducted via your Zserver. As usual, you will be presented with a list of titles that match your query. If you ask to see a "full" document then the Zserver will present the relevant plain-text file. It is possible to conduct complex queries using these clients. However, you will need to understand the arcane Isite query language called "kwaqs" (explained below).

Full testing with "zbatch"

Now you will need to ensure that the search system is configured properly and that searches can be conducted against the actual fields within the metadata documents. It is not enough to just conduct a full-text search and get some results.

The Isite program called "zbatch" is the one good way to test your Z39.50 server. "zbatch" will read an input text file which lists all of your queries, then initiate a session with the specified server, conduct the queries, report the hit lists from each query, and then disconnect.

You will need to understand an Isite query language called "KWAQS" and Z39.50 Use Attributes (ASDD uses the GEO Profile and Use Attribute Set, but these notes about the BIB-1 Profile will also apply). These resources will be useful ...

Example zbatch queries

Note: These zbatch examples are old and are provided for guidance only.

Below are some example zbatch query documents that you can use at your own site. Copy them and edit to suit your own Zserver. These input documents contain a number of sequential queries. Each query comprises 5 lines. Comment lines beginning with # are passed through to the output.

Zbatch usage is: $ISITE_BIN/zbatch hostname port input_filename

Line number Purpose
1 Repository name
2 Z39.50 Profile (ASDD uses GEO)
3 Record Syntax (HTML, SUTRS) - format of results
4 Element Set (Brief, Full) how to list results
5 Query in KWAQS format

So the following query will search for the word "flora" occurring in the "title" metadata element (Use Attribute 4).

#--------------------------------------------------
# query #2 - title/flora
#
edd
GEO
HTML
B
flora[1,4]
#--------------------------------------------------

HTTP-Z39.50 gateway test WWW interface

There is a replica of the "ASDD advanced search" gateway interface. This allows node managers to conduct queries against your own test Zserver, which would run on a different port to your production Zserver.

ASDD test gateway

Please send feedback to add your test node to this test gateway. However, please be absolutely sure that your zerver is configured properly first - this interface is not a substitute for proper testing. We need to know the following details:

  • hostname ... the domain name of the server
  • port ... on which your test Zserver is running
  • repository name ... the name of the searchable document repository
  • picklist title ... the name for your node that will be listed on the interface