[OAI-implementers] Error reporting from OAI implementations

Thomas G. Habing thabing@uiuc.edu
Mon, 07 May 2001 09:58:51 -0500

Hi Jozef,

Check section, Status-Code, in the OAI spec.  Essentially this error
would require that you return an HTTP status code of 400.  However, in
addition to the HTTP Status-Code you may also want to send a human-readable
Reason-Phrase (See section 6.1, Status-Line, in the HTTP protocol spec:

In the case of a missing metadataPrefix, I use:

  400 Bad Request ('metadataPrefix' is a required parameter)

Just for good measure I also send an error message in the body of the HTML
response, such as:

<?xml version="1.0" encoding="UTF-8" ?> 
 <html xmlns="http://www.w3.org/1999/xhtml">
   <title>400 Bad Request ('metadataPrefix' is a required parameter)</title> 
   <h4>400 Bad Request ('metadataPrefix' is a required parameter)</h4> 

but this probably isn't that useful in a protocol which is mostly for
machine consumption.

Does anyone else think it might be useful to define some standard (or
recommended) HTTP Reason-Phrases in the OAI spec?  This might make it easier
to diagnose problems from web logs; instead of error '400' or '400 Bad
Request', you've got '400 Missing metadatPrefix'.  Plus it would give
protocol implementers one less thing to have to think about.

Kind regards,

Thomas G. Habing
Research Programmer, Digital Library Initiative
University of Illinois at Urbana-Champaign
052 Grainger Engineering Library, MC-274
thabing@uiuc.edu, (217) 244-7809

> Jozef Kruger wrote:
> Hello everybody,
> As a programmer for Adlib Information Systems (the Netherlands), I am
> implementing the OAI protocol for our database. I have a question about
> the error reporting. When an OAI-call is done, with for instance the wrong
> parameters (e.g. metadataPrefix is missing), how do I correctly report the
> error. Is there a standard way for doing this? And if so, what way? :)
> thanks very much.
> Jozef Kruger