But first, a question of etiquette; If a known blogger replies to a post via email, should it be assumed that said blogger wouldn't appreciate being mentioned in a public forum? I'll error on the side of caution...
In response to my previous post, it has been pointed out that:
...it is impossible to express some of the characteristics of RSS 2.0 in a W3C XML Schema. -Source Omitted
The commentor went on to cite Jorgen Thelin's 'blog; apparently, Jorgen has been attempting to derive an XSD schema for Rss 2.0 for some time now, with moderate difficulty. Hats off to Jorgen! If i have any time to play with, i'll be sure to toy around with his schema. Can't wait to see what VS.Net has to say about it. Wonder if Strong-Typed DataSets know what to do with pattern restrictions? I doubt it... decorator pattern, here I come..
Jorgen goes on to list 9 issues he's had in creating his schema; since his original post, 7 of the 9 issues have been resolved. The remaining two issues aern't show stoppers; one has to do with the dublin core extensions (which should have their own namespace and associated XSD schema, anyway), and the other has to do with mandatory inclusion of title or description (i say, make both mandatory... what could it hurt?).
Clearly, XSD isn't perfect for everything; but its gotta be better than ascii. If you were to expand the annotations/documentations in the xsd schema, what else would you need in order to express the same rules outlined in the text version of the spec?
Further, the "Version" attribute of the rss channel is just basically silly. What version of the spec does this doc compy to? easy, check the namespaces of the root element. Thats how this whole xml thing was supposed to work. I shouldn't have to know the structure of the doc to determine its version; thats kinda obvious.