Nice work Eric! You are right to focus on making the data resolvable first. Ross' advice to work on exposing and interlinking more of your own data next, instead of trying to link out elsewhere, is good I think. I noticed from your compact (and elegant) little Perl script that you are expecting an HTTP agent to send an Accept header of "application/rdf+xml" if it wants the rdf. While this may happen sometimes, many linked data harvesting clients send a more expressive Accept header. For example the rapper command line tool [1] sends a header of: Accept: application/rdf+xml, text/rdf;q=0.6, */*;q=0.1 Fortunately Perl's libwww [2] has support for content negotiation, and it looks like it plays nicely w/ CGI.pm which you are already using. If you want to make sure the right thing is happening you can watch what comes back over the wire with curl [3]. -- ed@hammer:~$ curl -i --header "Accept: application/rdf+xml, text/rdf;q=0.6, */*;q=0.1" http://id.infomotions.com/?id=more-utopia-221 HTTP/1.1 303 See Other Date: Tue, 21 Jul 2009 15:19:04 GMT Server: Apache/2.2.8 (Fedora) Vary: Accept,Accept-Encoding Location: http://infomotions.com/etexts/literature/english/1500-1599/more-utopia-221.htm Content-Length: 0 Content-Type: text/html; charset=ISO-8859-1 -- Hope this helps, and isn't too confusing. If you need help w/ the content negotiation bits let me know. //Ed PS. Another thing to add to your wishlist would be to support JSON representations if you happen to have them handy. I think it's worth demonstrating the convergence of REST and Linked Data. [1] http://librdf.org/raptor/rapper.html [2] http://search.cpan.org/~gaas/libwww-perl-5.829/lib/HTTP/Negotiate.pm [3] http://curl.haxx.se/