I've got an Atom/Pie/nEcho feed now. It even validates! Thanks to Mark for all the documentation, Dave Walker for the Blosxom template, and Sam for pulling this effort together. I think the effort to define a new Weblog API is really important. Some gripes and comments...

The <summary> element specfies it's plain text, no escaped HTML. What happens if I want an HTML entity in there? Am I not allowed? I think <summary> and similar elements should have the same content encoding attribute that <content> does.

My no-content Atom feed is 6530 bytes (1560 bytes compressed), my no-content rss091 feed is 3868 bytes (1284 bytes compressed). Most of the extra space seems to be timestamps.

<entry> elements seem too wordy. <id> is redundant with <link> in Blosxom. I don't see why I need two timestamps (<issued>, <modified>), identical except for timezone. Recommendation: make <issued> and <id> optional (if <id> is missing, substiute <link>).

<copyright> is optional. Some lawyer should reassure us that its omission does not imply the feed is not copyrighted. I'm happy with implicit copyright and would rather not waste 50 bytes in every single download.

Generating proper timestamps is hard. Timezone is the bad part: -0700 vs -07:00, local vs zulu.

It took me 30 minutes to get something basically working, an hour to customize it to my satisfaction. Too long, but it will get better. Overall the spec is shaping up nicely.

You can fetch the Blosxom bits I used to put this together. I hacked some of the plugins to get the feed to validate.

techblosxom
  2003-08-07 16:19 Z