mnot’s Weblog

Design depends largely on constraints.” — Charles Eames

Web Services entries

WS-REST (heh, heh)

If you haven’t seen it already, check out the Call for Papers for the First International Workshop on RESTful Design (WS-REST 2010), where I’m on the program committee, along with...

published on Friday, January 15 2010 ( 1 comment )

Dev-Friendly Web Caching

Ryan Tomayko announces Rack::Cache, a HTTP cache for Ruby’s generic Web API; The basic goal is standards-based HTTP caching that scales down to the early stages of a project,...

published on Monday, October 27 2008 ( 4 comments )

/site-meta

Metadata discovery is a nagging problem that’s been hanging around the Web for a while. There have been a few stabs at this problem (including at least one by...

published on Thursday, October 16 2008 ( 17 comments )

The WS-Empire Strikes Back... feebly

Here’s a gem on a little-used mailing list: As most of you know, over the last several years fairly good progress has been made on standardizing Web services. Many...

published on Friday, July 4 2008 ( 9 comments )

Atom gets a new audience

Huh. The Atom Format RFC has been out for a while, and as one of the authors, I get the odd mail now and again asking a question or just...

published on Thursday, May 15 2008 ( 1 comment )

Moving Beyond Methods in REST

Having complained before about the sad state of HTTP APIs, I’m somewhat happy to say that people seem to be getting it, producing more capable server-side and client-side tools...

published on Thursday, March 20 2008 ( 11 comments )

DAV WTF?

Not many people that I know outside of IETF circles realise that a new *DAV effort has started up; CardDAV. An address book access protocol leveraging the vCard data...

published on Monday, March 3 2008 ( 4 comments )

POST and PATCH

It’s 7am, I’m sitting in the Auckland Koru Club on my way home and reading the minor kerfuffle regarding PATCH with interest. For me, the critical difference between PATCH...

published on Sunday, February 17 2008 ( 2 comments )

Another Kind of HTTP Negotiation

Here’s one that I’ve been wondering about for a while, for the LazyWeb (HTTP Geek Edition); PUTs and POSTs can result in the creation of new resources, or changes...

published on Wednesday, February 6 2008 ( 25 comments )

Watching WADL (and other rambling thoughts)

I’m following the discussion of RESTful Web description in general, and WADL in particular, with both difficulty and interest (see Dare, Patrick and Joe’s thoughts for a nice contrast)....

published on Monday, January 21 2008 ( 1 comment )

Cache Channels

The stale-while-revalidate and stale-if-error extensions aren’t the only fiddling we’ve been doing with the HTTP caching model. Now that Squid 2.7 is starting to see daylight, I can explain...

published on Friday, January 4 2008 ( 4 comments )

Two HTTP Caching Extensions

We use caching extensively inside Yahoo! to improve scalability, latency and availability for back-end HTTP services, as I’ve discussed before. However, there are a few situations where the plain...

published on Wednesday, December 12 2007 ( 16 comments )

Why Revise HTTP?

I haven’t talked about it here much, but I’ve spent a fair amount of time over the last year and a half working with people in the IETF to...

published on Sunday, December 9 2007 ( 9 comments )

WADL Documentation XSLT Updated

I've updated the WADL documentation stylesheet, primarily to; Fix a bug with finding and displaying XML Schema Make it compatible with xsltproc (and hopefully most other XSLT1.0 processors that...

published on Friday, November 2 2007

5005

Feed Paging and Archiving (nee Feed History) has finally made it to a standards-track RFC. For many non-traditional (read: non-blog) applications of Atom, I think archived feeds in particular...

published on Saturday, September 8 2007 ( 3 comments )

ETags, ETags, ETags

I’ve been hoping to avoid this, but ETags seem to be popping up more and more often recently. For whatever reason, people latch onto them as a litmus test...

published on Tuesday, August 7 2007 ( 8 comments )

URI Templates Redux

URI Templates -01 is now an Internet-Draft. After sitting on the spec for a while and trying to figure out an elegant solution to the encoding problem, we decided...

published on Saturday, July 28 2007 ( 5 comments )

The State of Proxy Caching

A while back I wrote up the state of browser caching, after writing a quick-and-dirty XHR-based test page, with the idea that if people know how their content is...

published on Wednesday, June 20 2007 ( 13 comments )

httperf rev

Martin Arlitt makes an exciting announcement; It is my pleasure to announce two new versions of httperf: 0.8.1 and 0.9.0. version 0.8.1 fixes the known bugs in version 0.8,...

published on Tuesday, May 1 2007

Squid is My Service Bus

The QCon presentation (slides) was ostensibly about how we use HTTP for services within Yahoo’s Media Group. When I started thinking about the talk, however, I quickly concluded that...

published on Sunday, April 29 2007 ( 6 comments )

WWW2007 Developers’ Track

We’ve announced the program for this years’ Developers’ Track, and I’m very excited about the lineup. For example, Ryan Boyd from Google will be presenting about GData right before...

published on Thursday, April 5 2007

REST Issues, Real and Imagined

I think that most of the debate about REST focuses on the wrong things, leading developers down the garden path at the expense of their productivity and the success...

published on Tuesday, February 27 2007 ( 14 comments )

Pipes!

Yahoo! (finally!) released Pipes as a beta today; congrats to the very talented team that put this together. Niall gives the geeks-eye view, and to be clear, this is...

published on Wednesday, February 7 2007 ( 8 comments )

SOA Jumps Shark

Uche calls it; So the SOA wars are heating up. More and more smart people are pointing out that the emperor has no clothes; but stakes is still crazy...

published on Monday, December 4 2006 ( 2 comments )

Schema for JSON

One of the perceived deficiencies of JSON is that it doesn’t have a schema language. I say “perceived” because the problems that a schema language brings often outweigh the...

published on Thursday, November 30 2006 ( 12 comments )

Wanted: HTTP Yahoo!s

My team at Yahoo! is looking for a mid-level developer (5-10 years experience) to help build our HTTP/REST toolkit, among other things. The job is mostly coding Perl and...

published on Tuesday, October 17 2006

Does the Enterprise (Vendor) Get the Web?

A couple of interesting things have happened recently; first, Jonathan Marsh has a new job; WSO2 is a year-old startup which provides support services around Apache’s Axis 2 Web...

published on Friday, October 13 2006 ( 3 comments )

Some Questions for Software Vendors

Everyone seems to be gushing about Microsoft’s Open Specification Promise. While any headway is good in the horrible landscape that is Intellectual Property, my initial reaction is that it...

published on Wednesday, September 13 2006

Bringing Back the Link - With a Twist

Recently, there’s been a resurgence for the Link element in HTML; everything from Microformats to Atom autodiscovery is using it. This isn’t surprising; as machines start processing Web documents...

published on Thursday, June 22 2006 ( 8 comments )

Web Services are Dead, Long Live Web Services

When I joined Yahoo, one of the biggest adjustments I had to make was to their use of “Web Services”. There, that phrase means any kind of machine-to-machine communication...

published on Thursday, May 25 2006 ( 10 comments )

Caching Web 2.0

I just finished my XTech presentation, “Web 2.0 on Speed”. here are the slides [pdf]; I’m going to try to s5 them soon. There isn’t much new in this...

published on Tuesday, May 16 2006 ( 7 comments )

Yaron Uncloaks!

Yaron publicly says what he’s doing at Microsoft (scroll down); I hear that HTTP stuff is pretty cool. If anyone cares you can peruse a bunch of blog entries...

published on Thursday, May 11 2006 ( 5 comments )

Vendor-pires

Anne-Thomas Manes extolls the virtues of WS-*; The single, most important feature that inspires my enthusiasm about WS-* is that it has universal support from all the major vendors....

published on Wednesday, May 10 2006 ( 18 comments )

XTech

It’s official; I’ve got a last-minute slot at XTech, talking about all things Web caching....

published on Sunday, April 23 2006 ( 2 comments )

Another WS-*

A friend in the trenches put me on to the funniest thing I’ve seen in a long time. Paging through the quotes, there are a few that are especially...

published on Friday, April 14 2006

Are Namespaces (and mU) Necessary?

It’s become axiomatic in some circles — especially in WS-* land, as well as in many other uses of XML — that the preferred (or only) means of offering...

published on Friday, April 7 2006 ( 13 comments )

What good is SOAP to HTTP?

I’m a little confused by Mark Baker’s stance regarding SOAP; he seems to encourage the Web services world to use SOAP on top of HTTP in a fashion compatible...

published on Thursday, April 6 2006 ( 3 comments )

Don’s False Choice

True to form, Don’s using his witty charm and good looks (such as they are ;) to shape discussion of a topic… in this case, REST, where he splits...

published on Monday, March 20 2006 ( 9 comments )

WS-Transfer, WAKA and the Web

Microsoft and friends (of the keep your enemy closer variety, I suspect) have submitted WS-Transfer to the W3C. I found the Team comment interesting; e.g., WS-Transfer can therefore be...

published on Wednesday, March 15 2006 ( 10 comments )

How Web-Ready is XMLHttpRequest?

I’ve been playing around with some ideas that use XMLHttpRequest recently, but I keep on bumping up against implementation inconsistencies on IE vs. Safari vs. Opera vs. Mozilla. Although...

published on Monday, January 23 2006 ( 29 comments )

REST vs..?

More and more people are getting turned on to the advantages of using REST as a higher-level abstraction for networked applications, often comparing it favourably to SOAP and Web...

published on Monday, November 7 2005 ( 12 comments )

Separating the Data Model from its Serialisation

For some time, I’ve noticed that people defining XML formats spend an inordinate amount of time talking about the structure of the format. This is especially apparent in standards...

published on Wednesday, August 10 2005 ( 11 comments )

HTTP Performance (again)

Some folks at IONA have written a paper entitled Where HTTP Fails SOAP. I had a chance to look at this before I got it published, and their conclusions...

published on Monday, August 8 2005 ( 1 comment )

One Description to Bind them All? Nah.

You can describe just about anything with sufficient precision in plain English, given enough words. In practice, this doesn’t happen; specialised fields — whether science, finance or art —...

published on Friday, July 8 2005

Perspectives on the Addressing Experiment

I don’t talk much about it here, but I’m honoured to be the Chair of the W3C Web Services Addressing Working Group. This is something of an experiment for...

published on Monday, June 27 2005 ( 2 comments )

Web Description at the W3C

The W3C has just started a mailing list for discussion of Web description formats; This mailing list is dedicated to discussion of Web description languages based on URI/IRI and...

published on Tuesday, May 24 2005 ( 2 comments )

Using XML in Data-Oriented Applications

So, you’ve got some data that you need to give to somebody else, and you want to use XML to do it; good for you, you’ve seen the light...

published on Wednesday, March 2 2005 ( 5 comments )

The Map is Not the Territory

Werner makes an excellent point; [W]e need to continue to take care that we do not consider The Model to be The Truth. The web based internet is a...

published on Monday, February 7 2005 ( 3 comments )

WS-Who's on First?

There are MEPs in SOAP and MEPs in WSDL. WS-Addressing doesn't have MEPs, but it does allow you to create patterns of messages.Meanwhile, SOAP has bindings and WSDL has bindings, and WS-Addressing have bindings too. But, a SOAP binding binds an underlying transport, a WSDL binding binds an abstract interface, and an Addressing binding binds abstract properties.That's not the properties in SOAP, by the way, which aren't exactly the same as the properties in WSDL.

published on Sunday, January 23 2005 ( 1 comment )

Melbourne

Since the W3C Web Services Addressing Working Group is visiting my (sort of) home town in a couple of weeks, I've updated the Opinionated Guide to Melbourne that I sometimes give to people by e-mail and put it on the Web. /me dons flame-retardant suit...

published on Wednesday, January 5 2005 ( 6 comments )

Why POST is Special

In a recent post, Don gave his take on the enlightening nature of WS-Transfer; Honestly, WS-Transfer has been in the oven for quite a while. It’s been interesting to...

published on Sunday, October 10 2004 ( 11 comments )

Is there a Web Services Architecture?

As I'm sure many others were, I was intrigued to see that Microsoft published an Introduction to the Web Services Architecture the other week. Unlike their usual collaborative selves, they did this without any partners, co-authors or even acknowledgement to the outside world; it reads as if Web services is a beast that was bred purely within the gates of Redmond.

published on Wednesday, September 29 2004 ( 3 comments )

The ‘Web’ in Web Services

I was very interested to see the reaction that people had to WS-Transfer over the last few days. While the SOAP Resource Representation Header had opprobrium heaped upon it (""), Transfer passed by with nothing more than a few nodding heads and people saying "aha." In my view, WS-Transfer deserves a lot more of that criticism; if anything, the Resource Representation Header tries to supplant MIME, not HTTP.

published on Monday, September 27 2004 ( 2 comments )

The ‘Document’ in Document-Oriented Messaging

(Another instalment in “XML Heresies.”) One of the foundations of most vendors’ approach to Web services is called document-oriented messaging. This is the notion that interoperability is improved by describing...

published on Thursday, August 5 2004 ( 10 comments )

Come One, Come All

The W3C Workshop on Constraints and Capabilities for Web Services promises to be a quiet, calm, tightly-scoped discussion of a well-understood topic, lacking any controversy whatsoever. What else could possibly...

published on Thursday, July 1 2004

SOAP: Protocol or Format?

Way back when the XML Protocol Working Group started kicking around, Henrik and I had a long-running, low-level “discusssion” about whether SOAP was a protocol or a format. Henrik won,...

published on Wednesday, June 30 2004 ( 2 comments )

Use Cases for Web Description Formats

One thing about Web description formats that hasn’t seen much discussion yet is how people intend to use them. The WSDL Working Group has a Usage Scenarios document and a...

published on Monday, June 14 2004

XopParser.py 0.2

To help inform discussion of XOP (and to save Sam the trouble ;), I’ve put together a quick-and-dirty (we’re talking two hours) XOP parser in Python. It isn’t particularly efficient,...

published on Friday, May 7 2004

How do we use SOAP Headers?

Way back when in the XML Protocol Working Group, one of the concerns that came up was the processing model for SOAP headers. In particular, while SOAP 1.2 does a...

published on Tuesday, April 27 2004 ( 3 comments )

Using WebDAV as a Description Format for REST

In the past, I’ve talked about reusing WSDL as a format for describing Web resources, as well as coming up with a bespoke format. One path that I’ve overlooked so...

published on Tuesday, April 27 2004 ( 6 comments )

Sean’s Words of Wisdom

Sean McGrath always has carefully considered positions, and he hits it out of the ballpark with this one. A few thoughts; Eventually though, to fully realise RESTian SOA we need...

published on Tuesday, April 20 2004 ( 1 comment )

Asynchrony: There Is No Spoon

One of the things that people find compelling about Web services is its promise of asynchrony. “HTTP is only request/response, and therefore synchronous; it’s terrible for long-lived business processes, where...

published on Monday, April 19 2004 ( 1 comment )

Describing Generative Identifiers in WSDL

To use WSDL to describe RESTful interactions, you need some way of accommodating generative resource identifiers. In a nutshell, this means some part of the URI is dynamic. For example,...

published on Friday, April 16 2004

A(nother) Description Format for REST

I’ve talked before about describing RESTful Web resources, going as far as prototyping a new format. That work was predicated on the assumption that WSDL wasn’t adequate. However, Dave Orchard...

published on Wednesday, April 14 2004 ( 5 comments )

Behind the Scenes at Your (very) Local Music Store

Aaron Swartz has started to document the iTunes Music Store; this is a good example of a non-browser, cross-platform application reusing HTTP. It would be interesting to see the interface...

published on Monday, March 29 2004

XOP and MTOM

The XML Protocol Working Group (of which I’m a member) has released a first draft of XOP, XML-binary Optimised Packaging, and a revised draft of MTOM, the Message Transmission Optimisation...

published on Saturday, February 14 2004 ( 3 comments )

DIME is dead.

'cause Gudge says so, and as we all know, Gudge is always right....

published on Thursday, October 30 2003

Web Services

If you're lost in a sea of specs, pundits and opinions, might I suggest two very well-written, thoughtful papers: Principles of Service Oriented Integration by Sean McGrath at Propylon [pdf]...

published on Monday, August 18 2003

SOAP1.2

We finally did it. More than two years ago, I went to North Carolina almost by accident; at the last minute I asked David Fallside if I could come to...

published on Tuesday, June 24 2003