SRW Base Profile
Version 1.1, 20th November 2003
Introduction
The following features are recommended in order to ensure interoperability between SRW servers and clients. These features are considered to be the base line implementation specifications, and if not implemented, the client or server will be unlikey to interoperate at all. Implementation of all protocol features is the desired outcome, but it is recognised that not all implementations will achieve this goal. The features below are considered necessary for a client or server to be described as supporting the base SRW profile.
Base Profile Requirements
CQL Support
- Servers: Must support CQL
- Clients: Must support CQL
In order to claim CQL support, at least the following aspects must be implemented:
- Basic 'indexset.index relation term' search clauses
- Term only search clauses, quoted and unquoted
- 'and' 'or' and 'not' booleans
- 'any' 'all' and 'exact' relations, = for numeric equality
- Parentheses for determining precedence.
Record Schema Support
- Servers: Must support Dublin Core for all records (every available record must be available at least via the DC schema). Must support the diagnostic schema for returning errors.
- Clients: Must recognise the diagnostic schema.
Explain Support
- Servers: Must support Explain.
- Clients: It is strongly recommended that clients retrieve the Explain record in order to discover the full facilities available at the server.
The Explain record describing the server must be available at the base URL and also via the 'explain' operation.
The record must conform to the following minimal specifications:
- ServerInfo must be present and contain host, port and database.
- ServerInfo attribute 'protocol' must be set to 'SRW', 'SRU' or 'SRW/U'. The version attribute must be given for the highest version supported.
- IndexInfo must be present and contain at least one context set definition and one index element.
- Each such included index element must include at least one context set and name map.