Ben Trott: I've released XML::Atom, a Perl implementation
of all things Atom. The goal for XML::Atom is to provide an
implementation of the syndication feed format, the API, and the
archiving format planned for Atom. Currently, it provides support
for the feed format, and an implementation of a client for the
API.
Cool! Some ideas for a 0.03 version:
Comment support. Instead of introspection, look
for a link tag. See description on
Joe's
site. On my site, authorization is not required to post a
comment, but author information (name and url or email) is
recommended.
Wiki support. Instead of POSTing a comment, how
about PUTing a page? If it is a new version of a page, the
modified element must match. I would be willing to create a
test wiki based on moin-moin, one where authorization is
required.
P.S. Instead of calling the API createEntry, why not
simply call it post?
At what point was a well defined comment determined in the Atom wiki? Could you provide a link to that discussion?
When I was active in this endeavor, I recall that a great deal of time and effort was spent on what is a well formed post. I never saw or read about such a discussion for comments.
So let's see: XML::Atom 0.01 supported Atom-digest, which allows both client and server to verify to each other that they know the user's password, but does not require either client or server to store that password in plaintext. 0.02 replaces this with WSSE, which offers no verification that the server you think you're talking to actually knows the password (and could therefore easily be spoofed), and requires both client and server to store the password in plaintext.
WSSE Username Token Digest doesn't require you to store the password in plain text.
One could argue that Atom-digest required you to store the password in exactly the format that Atom-digest specified. Already have a bunch of passwords that are not stored in that format? If so, then you are screwed.
Sam: Why was that posted to your blog and not the wiki? Was consensus reached? Why did it appear in Joe's API spec months before well formed comments had even begun to be discussed?
Tim, it was posted on my weblog because it was something that I have speculatively implemented. And also in an attempt to give the topic a wider visibility, mainly because some people have chosen not to participate in that venue.
Tim, all we have at this point are RFCs. I chose to do prototypes in order to generate comments. At some point, we will approach a standards body (most likely, the IETF).
So is Ben wasting his time trying to implement something that is stated to appear in his company's products because it could drastically change in the coming years befores its submitted to the IETF?
Timothy,
Any vendor that implements a draft standard faces this issue. Whether he is wasting his time or not depends on how much his customers value the provided functionality and how he plans to migrate his users when the final version is released.
Vendors have to figure out how to strike the right balance between implementing a draft standard as it is being designed so they can provide implementation feedback as well as be quick to market while not tying their products to a technology before it matures
Tim, this is the tricky thing about formats and protocols, when to freeze them, and getting buy-in on the freeze.
If you look at the history of RSS, and assume it predicts what Atom will go through, the answer is that Ben will have to pedal hard to keep up.
If anything, because there are so many more cooks, it looks like the Atom experience will be even worse.
But it's hard to predict what will happen.
BTW, they have to worry not only about current implementors but future ones too. When we tried to freeze RSS 0.91, there was no Movable Type, or even Blogger.
BTW, of course the usual suspects will cry foul because I said what I think. Maybe this time they'll consider this disclaimer enough. Probably not. ;->
Ben Trott: I've released XML::Atom, a Perl implementation of all things Atom. The goal for XML::Atom is to provide an implementation of the syndication feed format, the API, and the archiving format planned for Atom. Currently, it provides support...