inessential by Brent Simmons

Compromise on Atom and XML

Tim Bray suggested a setting for how strict a parser should be with a given feed. Eric Albert suggested a smiley face (as in iCab) to distinguish well-formed from non-well-formed feeds.

I’ve gotten lots of email on the topic of Atom and requiring well-formed XML. I’ve read about this topic pretty much everywhere it’s popped up. And I conclude, reluctantly, that a compromise is the best thing.

I encourage Nick Bradbury—and any other aggregator developer who was planning on requiring XML well-formed-ness for Atom feeds—to take a similar position. Nobody should take a bullet over this.

What I plan to do in NetNewsWire is something like the following—though details may change, of course.

1. Have global and per-feed settings for requiring well-formed XML. The default will be no, to not require it. My Atom and RSS parsers will both work around non-well-formed feeds in the same way. (They’ll most likely use the same code.)

2. Have an optional indicator of some kind that displays when a feed isn’t well-formed XML. (Probably not a little frowny face, but who knows.) This feature will also be turned off by default.

3. Make the Validate this Feed command more visible. Right now it’s available only through a contextual menu; it should be easier to find and use.

If you’re a NetNewsWire user, and you don’t care about this issue, it will stay out of your way. You’ll notice an extra pref and a command in the menu bar, but NetNewsWire won’t be complaining about non-well-formed feeds all the time.

You’re not expected to care about this issue, by the way—you want to read the news. That’s totally cool.

And me, I just want to get back to work fixing bugs and adding new features.