On Jun 30, 2007, at 7:22 AM, Alexander Johannesen wrote: > ... Seriously, before you do anything, read the book "Restful > WebServices" by Sam Ruby and Leonard Richardson > (http://www.oreilly.com/catalog/9780596529260/). ... Alexander and code4libbers: *THANKS* -- this thread was extremely helpful to some of my recent thinking and work. It's wonderful when terrific info flows one's way at just the right time. I have the book in hand and can't wait to immerse myself in it. Below is a glimpse into some of my recent questioning that shows why this is so apt. (I've posted a followup noting the book and crediting this list.) --- Birkin James Diana Programmer, Integrated Technology Services Brown University Library [log in to unmask] > From: [log in to unmask] > Subject: API thinking > Date: June 12, 2007 2:51:20 PM EDT > To: [log in to unmask] > > Folk, > > I've said before I'm a fan of service-oriented-architecture > thinking -- in the sense of moving blocks of code out to the > network instead of keeping them within language & server & > department-specific programs. > > Example: You want to see an item's Josiah status, say, for Zen and > The Art of Motorcycle Maintenance, ISBN 0688002307 -- this'll do > the trick: > > http://tinyurl.com/2p3vyu > > This is really, really useful (to machines). But the question comes > up when making APIs -- How should they look? What should the format > be? How might they 'reveal' acceptable parameters? How might they > be designed to be extensible? What are guidelines/best-practices > for these issues? > > I haven't really come across good info answering these issues, > other than the reminder that although APIs can easily be added-to, > *existing* data fields should rarely be changed, because once an > API is put in place, you don't know who's using it for what. > > A possible partial answer might be the Atom Publishing Protocol, > which bridges the gap between the one-way 'outgoing' disclosure- > type information of traditional RSS-feeds, and the desired ability > of an API to receive 'incoming' instructions. > > I recently stumbled across a terrific presentation on this topic. > The blog-post is: > > http://rollerweblogger.org/roller/entry/tri_xml_2006_presentation > > Be *sure* to download the linked pdf, which gives a good history of > RSS, and, around slide 56, gets into how Atom can be used as an API > for uses far beyond traditional dissemination of info. > > -Birkin > > --- > Birkin James Diana > Programmer, Integrated Technology Services > Brown University Library > [log in to unmask]