Search This Blog

Friday, August 17, 2007

AtomPub Interop Event Notes

Context: Atom developers participated in an online Interop Event on
August 6-7, 2007: anyone with working APP client or server code was
invited. The Atom Publishing Protocol (APP) is an application-level
protocol for publishing and editing Web resources. The protocol is
based on HTTP transfer of Atom-formatted representations, where the
Atom format is documented in the "Atom Syndication Format"
specification (IETF Request for Comments #4287). APP uses HTTP
(RFC 2616) and XML 1.0. The protocol supports the creation of Web
Resources and provides facilities for: (1) Collections: Sets of
Resources, which can be retrieved in whole or in part; (2) Services:
Discovery and description of Collections; (3) Editing: Creating,
editing, and deleting Resources. APP uses Atom-formatted
representations to describe the state and metadata of those Resources.
It defines how Collections of Resources can be organized, and
specifies formats to support their discovery, grouping and
categorization. Joe Cheng (Microsoft) writes in the Blog: "I spent
most of yesterday and today participating in the virtual Atom interop
event; you can see (and attempt to decipher) the results [online].
Windows Live Writer comes out sitting pretty! All of the servers I
was able to try worked great, although a bug fix or two needed to
be made along the way. Since the last time we did an interop event
like this (April 2007) I have implemented image uploads to media
collections as well as ETag conflict management, and both of those
areas seem very solid now... A few caveats need to be made before
concluding that AtomPub interop between production-quality blogging
services and WLW will go this smoothly: (1) A couple of the services
had no authentication at all, and the rest were doing Basic, with
or without TLS/SSL. Last time we ran into a bunch of servers that
used WSSE, not sure why there weren't any this time. Hopefully servers
will stick to the common auth schemes, plus WSSE. (2) Almost none of
the services had an actual HTML representation (like a blog homepage);
that is, they were mostly pure AtomPub servers; I'm thinking about
implementing a web app that takes any AtomPub endpoint and makes a
blog out of it, although I would love it if someone beat me to it.
(3) Categories still need figuring out, at least as they relate to
Windows Live Writer... I've got a list forming of (small) things
AtomPub blogging server implementers need to be aware of if they want
to have the best results with WLW. With the AtomPub core spec, plus
APE, plus that list, it should generally be pretty clear to server
implementers exactly how they should behave."

No comments: