Simon Fell > Its just code
Ziv Caspi documents the scheme that Aggie currently uses for namespace handling, its simple and I can't think of a situation that would trip it up, all it takes is a namespace aware XML parser. I've seen claims that that's an issue, but seriously folks, what platform doesn't have a namespace aware parser ?, most platforms seem to have a port of expat, which is namespace aware, those platforms that don't ought to be able to have expat ported to them [I've done ports of expat to both WinCE and Mac 9, its trivial], is it really a problem ?
I can't see how RSS 2.0 can be both fully backwardly compatible with RSS 0.9x and introduce namespaces, as we saw earlier, tools written with the assumptions that are valid for RSS 0.9x are just going to break when faced with a RSS 2.0 file that uses modules. As I see it then, there can only be 2 outcomes, either (i) you back away from namespaces altogether and loose the ability to de-centrally extend RSS, or (ii) accept there's going to be some possible breakage, and move forward. This shouldn't be a new issue to people writing RSS tools, RSS 1.0 which is slightly shy of being 2 years old uses namespace qualified elements, current RSS tools should already be doing the right thing with respect to namespaces.
Personally I vote for moving forward, pick a namespace-URI and clearly document the fact that RSS 2.0 elements are part of this namespace. It seems like a test suite with documented outcomes would help the tools guys move forward [perhaps the RSS 1.0 folks have already done this ?]
I just re-tested Aggie with the latest code from CVS, and it now gets it spot on.
got Namespaces ? Given all the recent fuss about RSS2.0, namespaces, extensibility, etc, I've been testing some popular aggregators (Radio, Aggie, Amphetadesk, NetNewsWire Lite) to see how they handle the extenisbility in RSS 1.0 and RSS 2.0, and how well they cope with some common XML Namespace issues. My immediate conclusion "If you're writing RSS aggregator apps that support RSS1.0 or RSS2.0, run, don't walk and go read the XML Namespaces rec" more thoughts on what this means later.