I like to solve application problems using the Web (statelessness, hypermedia, self-descriptive representations, and uniform interfaces) to produce an asymptotically tight bound solution!

Tuesday, May 26, 2009

WebDAV or AtomPub

This question is often asked by content managers, whether blogs or otherwise. I often pull together a bunch of links from all over the Web to answer this question. So this time, I thought of summarizing it on my blog. Your comments to correct any mistakes are most welcome.

Here's my (meek) attempt to contrast and compare the two approaches:

WebDAV:
  1. Adds 7 new HTTP methods
  2. Natively understands folders as "collections"
  3. Clients manipulate and control namespace 
  4. Clients can "parse" URIs to apply semantics of hierarchy
  5. Supports locking of entire hierarchies
  6. Natively supports relocating and copying document to a different folder
  7. Does not separate modifiable resources from read-only view of resources
AtomPub:
  1. No new HTTP methods
  2. Natively understands listings as "feeds" and modifiable listings as "collections"
  3. Servers control namespace, clients can make suggestions. 
  4. Clients can navigate to URIs identified in hypertext but not construct these URIs
  5. Natively supports only optimistic concurrency control of single resources
  6. Separates view-only resources from their underlying modifiable resources.
There is an interesting recent discussion comparing AtomPub and WebDAV in the context of Wiki APIs about the differences. 

Bottom line is "use WebDAV if you can". AtomPub is a simpler technique, but it is also less feature rich. Of course, extensions and other such things will add back some of the features over time, if people like the lightweight foundation of AtomPub.

0 comments:

Creative Commons License
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License. All materials on this blog are either the original work of its owner or used with acknowledgement of the copyright owner. 

About Me

My Photo
I have been an avid student of the evolution of the Web and its application to business problems.

Blog Archive

Label Cloud