Web services: only take the few good parts (updated)ΒΆ

Tags: work

Tim Bray has an article about web services.

I look at the confusing landscape where the "Web Services" flags fly, and I see some things that are proven good practice, and some other things that are mostly theory.

There are a whole lot of web services "standards", mostly called "ws-.....". That prodded Sean McGrath to proposing ws-cart and ws-horse and putting the cart before the horse, which would solve everything. Just too much, too unusable.

There are some things that just plain work. Most of what you send over the line are XML messages. Most used are plain HTTP and URL's to send those messages, but SOAP also sees heavy use. WSDL apparently is a good way to describe your web service. (I looked at wsdl when it came out and liked it then, but didn't hear too much good about it lately). According to Tim we should be building applications with what's here today and what works today: XML, HTTP, URIs, SOAP, WSDL, and that's about it.

Update: Mark Baker makes a comment on WSDL, that he doesn't quite like it (and he removes SOAP from Tim's web services use-these-technologies list).

Bill de hÓra says: Mark Baker, Sean McGrath, Paul Prescod, Don Box, even myself, have been pointing this out in one way or another for some time. Mark Baker in particular took a lot of stick for not being on message with WS orthodoxy. Paul Prescod was disembowelling SOAP-RPC and UDDI two years ago.

Disembowelling... Almost everything you need to do in this space, well someone is probably already doing it with a combination of SMTP, HTTP, FTP, RDF, URI, MIME, XML. That's the WS stack. Perhaps Atom/RSS will enter that set.

vanrees.org logo

About me

My name is Reinout van Rees and I work a lot with Python (programming language) and Django (website framework). I live in The Netherlands and I'm happily married to Annie van Rees-Kooiman.

Weblog feeds

Most of my website content is in my weblog. You can keep up to date by subscribing to the automatic feeds (for instance with Google reader):