Zthes Profile for SRW, version 0.5

12th December 2003

Mike Taylor
Version 0.5
$Id: zthes-srw-0.5.html,v 1.2 2006-05-02 09:12:27 mike Exp $

1. Introduction

Since the earliest versions of the Zthes Z39.50 profile, written in 1998, the profile document has consisted of two major parts. After the introduction, Section 2 describes an abstract model for thesauri and thesaurus terms; and Section 3 specifies how that abstract model is implemented in Z39.50.

Now, with the emergence of SRW (Search/Retrieve Web Service), this document re-expresses the Zthes abstract model in terms of the newer protocol.

This document is to be read in conjunction with Section 2 of the Z39.50 profile, describing the model. Section 3 of that document may be ignored. (In future editorial revisions, the abstract model and Z39.50 specification will be separated out into two different documents.)

This version of the SRW profile, 0.5, corresponds to version 0.5 of the Z39.50 profile. The specifications in that version are mature, having been unchanged for over a year, and the previous version having stood unchanged for eighteen months. It is not expected that substantial changes will be required in the future.

The identifier for this profile is the URI http://zthes.z3950.org/srw/0.5/

2. Searching

Queries in SRW are expressed in CQL (Common Query Language), using indexes drawn from CQL, Record Metadata (Rec) and Dublin Core (DC) context sets, and version 1.0 of the the Zthes context set.

servers must support the following queries:

Context Set Index Name Search in Element
Record Metadata id termID
Dublin Core title termName
Zthes qual termQualifier
CQL anywhere all elements

In a Zthes record, the term-name is considered to be the title, hence the use of the dc.title index to search it (and hence the use of the Cross-Domain attribute set's ``title'' access point for term-name searching in Section 3.6 of the Z39.50 profile.)

(It's cute, but completely accidental, that the four core queries use indexes taken from four different context sets.)

The following additional access points may optionally be supported:

Context Set Index Name Search in Element
Zthes admin thesAdmin
Zthes nt, bt, use, uf, rt, le relatedTermID
Record Metadata lang termLanguage
Dublin Core description termNote
Zthes type termType
Record Metadata created termCreatedDate
Record Metadata createdBy termCreatedBy
Record Metadata lastModified termModifiedDate
Record Metadata lastModifiedBy termModifiedBy
Record Metadata modifiedBy either termCreatedBy
or termModifiedBy

3. Retrieval

Servers should support retrieval using version 0.5 of the Zthes schema. This schema is expressed as a DTD rather than a XML Schema for historical reasons. Its identifying URI is http://zthes.z3950.org/xml/0.5/

4. Explain

The Z39.50 Zthes Profile includes specifications for the use of Z39.50 Explain facility to determine whether a given database is a Zthes database, and to locate a Zthes database suitable for use as an authority file for a particular access point of an explained database.

This first of these functions is easy to implement using SRW's Explain facility, ZeeRex: a database can be recognised as a Zthes-compliant thesaurus if the ZeeRex record describing it has in its <configInfo> section an element:

<supports type="profile">zthes</supports>

At the time of writing ZeeRex (version 1.9) does not appear to support locating a Zthes database to use as an authority file for an access point in another database.