iTunes and lax parsing

It's been reported that iTunes is lax in parsing the RSS extensions that they added to support iTunes.


In a nutshell, the way iTunes finds the nodes it needs in an RSS document is apparently by scanning through the document doing a case-insensitive compare of the node name to the name it's looking for.


XML is case-sensitive, so what most people do (an XPath query for /rss/channel for example) will not find nodes that the iTunes parser will find.


The danger is that iTunes could become so popular that users will only test with it. 


The precedent for this is Internet Explorer.  It accepts some pretty bizarre creations and tries its best to work with them.  Now that IE has been doing this for so long and so many sites depend on IE side-effects, that they've become the defacto standard, and folks like Mozilla have to work hard to emulate the bad parsing that IE does.


Hopefully all the attention this is getting now will get Apple to make their parser more strict, although it will mean breaking things in the short term.