Are Atom and APP the answer to everything? Easy one: No.
Dare Obasanjo raised a few hackles with a provocative post (Why GData/APP Fails as a General Purpose Editing Protocol for the Web). In a followup (GData isn't a Best Practice Implementation of the Atom Publishing Protocol) he notes that GData != APP. DeWitt Clinton of Google follows up with a
refinement of this equation to GData > APP_t where t < now in On APP and GData.
I hope this clarifies things for everybody.
There seems to be a complaint that outside of the tiny corner of the Web comprised of web pages, news stories, articles, blog posts, comments, lists of links, podcasts, online photo albums, video albums, directory listings, search results, ... Atom doesn't match some data models. This boils down to two issues, the need to include things you don't need, and the inability of the Atom format to allow physical embedding of hierarchical data.
An atom:entry minimally needs an atom:id, either an atom:link or atom:content, atom:title, and atom:updated. Also, if it's standalone, it needs an atom:author. Let's say we did in fact want to embed hierarchical content and we don't really care about title or author as the data is automatically generated. I might then propose this:
<entry>
<id>tag:a unique key</id>
<title/>
<author><name>MegaCorp LLC</name></author>
<updated>timestamp of last DB change</updated>
<content type="application/atom+xml">
<feed> ... it's turtles all the way down! ... </feed>
</content>
</entry>
Requestors could specify the desired inline hierarchy depth desired. Subtrees below that node can still be linked to via content@src. And when you get to your leaf nodes, just use whatever content type you desire.
Alternatively, if you need a completely general graph structure, there's always RDF. Which can also be enclosed inside atom:content.
The above is about as minimal as I can think of. It does require a unique ID, so if you can't generate that you're out of luck. I think unique IDs are kind of general. It also requires an author, which can be awfully useful in tracking down copyright and provenance issues. So that's pretty generic too, and small in any case.
Of course this type of content would be fairly useless in a feed reader, but it would get carried through things like proxies, aggregators, libraries, etc. And if you also wanted to be feedreader friendly for some reason, the marginal cost of annotating with title and summary is minimal.
Thursday, June 14, 2007
Friday, June 1, 2007
Google += Feedburner
This is a validation of how important feeds are to the Web ecosystem. And of course I'm personally happy they're going to Google. I think they're pretty happy too:The local weather forecast calls for general euphoria with intermittent periods of off-the-rails delight.
Saturday, May 26, 2007
Friday, May 18, 2007
Goodbye AOL; Hello Google!
Today is my last day at AOL. I celebrated my binary millennial in February, and it's time to move on... to some exciting new things over at Google. I'm going to continue to work in the community/social networking area and I plan to keep gently evangelizing user centric identity, REST, Atom, and feed technologies, among many other things. And, yes, getting products out the door too. It'll be fun.
I don't know yet if I'll continue using this blog; but regardless, http://abstractioneer.org will always resolve to where I'm blogging (anything can be solved with one level of indirection). And =john.panzer will always reach me.
I don't know yet if I'll continue using this blog; but regardless, http://abstractioneer.org will always resolve to where I'm blogging (anything can be solved with one level of indirection). And =john.panzer will always reach me.
Wednesday, May 16, 2007
New Journals features: Video, pictures, mobile... and Atom!
The team just added some cool features to Journals last night. There's a new button that lets you easily add pictures from various Flickr, your computer, AOL Pictures, or an arbitrary URL. There's a video button that lets you upload a video to embed in your entry or About Me, or record directly from your webcam. The latter uses the Userplane video recorder widget, which was a breeze to integrate with. We're also highlighting our mobile posting feature at http://journals.aol.com, which lets you post via your cell phone (or email!) including pictures or video. Here's a quick trick: You can use this feature to integrate iPhoto with your blog; just choose to Share via email and put in your blog's email address.
We've also made some changes to our Atom API to bring it more into line with the draft APP standard; it's not 100% there yet but it's close and certainly usable.
We've also made some changes to our Atom API to bring it more into line with the draft APP standard; it's not 100% there yet but it's close and certainly usable.
Tuesday, May 15, 2007
At iiw2007a: Concordia (Eve Maler)
Eve draws up a diagram showing how 'bootstrapping' works in SAML/Liberty WS. Discussion ensues with many queries about Condordia. More questions than answers, but I think that people have a lot of related/interlocking problems that need solving.
Starting from OpenID, it sounds to me like all these cases are a subset of the "access a service on behalf of a user" use case; hopefully solving either one will help with the other.
Subscribe to:
Posts (Atom)
