Mon 04 Apr 2005

URIQA server for Common Lisp

I've long been puzzled that Nokia can support Wilbur and yet implement URIQA on top of RDF Gateway.

So I spent a day or so reimplementing it in Common Lisp using my two favourite toys, Wilbur and Araneida. Yes, this is all I achieved today.
Here's the file. It relies on Wilbur, which you should install manually, and Araneida and wilbur-ext, which you can install using ASDF. Point the path at the top of the file to your Wilbur install, make sure the ASDF packages are in your ASDF path, and load the file. Voila!

I should point out that this has only been tested on OpenMCL, only on my machine, and I had a bit of data loss since it was last thoroughly tested, so it might not work at all when I'm not watching it with a beady eye. Comments welcome.

Update: please note that Araneida always tries to parse POST bodies as x-www-form-urlencoded data, which is wrong. Replacing line 27 of daemon.lisp with the following fixes the problem. Now to get this into the Araneida source tree…
(parsed-body 
(if body
(if (member "application/x-www-form-urlencoded"
(cdr (assoc :content-type headers))
:test #'string=)
(parse-body body '(#\&) len)
body)
nil))

Posted at 2005-04-04 14:20:49 by RichardLink to URIQA server for C…