Jon Udell brings up some interesting issues with his latest LibraryLookup notes. There are definately problems with using ISBNs to search. You can read Jon’s post for details, but a single title can have multiple ISBNs (hardcover, paperback, editions, etc). Here is one specific problem that Jon notes:
Another is that, book titles being non-unique, there is no universal identifier for the genus. I wonder if there’s a need for a Web service to solve this. Given an ISBN (for, say, a mass market paperback), it would map from species to genus, collect all species in the genus, and return a lists of ISBNS (paperback, hardcover, audiocassette, etc.)
I have a feeling that implementing a service like this wouldn’t be too hard to implement using Amazon’s or Google’s web service APIs (or by Amazon themselves) and then send that back a list of ISBNs (via XML-RPC, SOAP, REST, etc) so that your javascript bookmarklet can look them up in turn. This solution does have a problem, though. If implemented on a single box somewhere, you’ve got a single point of failure. It doesn’t just work, it’s not decentralized. In order for this to work properly, you might have to employ some Javascript web services calls and employ some of localhost web services.
I get a little fuzzy on details at this point, mostly because I don’t have a whole lot of experience in Javascript, but I’m sure that a javascript client could take advantage of Amazon’s XML over HTTP, or you could use a Javascript SOAP implementation. Once you’ve got that going, a few calls to Amazon to get a list of ISBNs and you can proceed on your way. Of course you could always make your calls, parse some data, and create a result page on the fly containing amazon and barnes and noble results, info and status from your local libraries, and related information from Google.
Think of it as a on-the-fly search result dashboard. Now extend that to include more than just books. I’ll try to implement this when I get a chance, but I know there’s someone out there that could whip this up in 10 minutes, so feel free to do so if you get bored.
In conclusion, it’d be nice if Amazon implemented a web service like Jon spoke about, but they don’t neccesarily have to. We might be able to do pretty well on our own (with the help of their web services, of course).