And of course he recommends… the serializer/XmlWriter! Yes, let’s all write at least 3 lines of code for every element, more if there are attributes!
I don’t have a problem with XML, but the notion that it’s perfectly okay to expect developers to write 500 lines of code comprising 46 routines and 13 classes just to spawn a single document sounds characteristic of an Architecture Astronaut.
Maybe text-based templates aren’t the answer either, but you can use a single routine to escape a full XML string without the ridiculous overhead of a “writer”. IMO, in order for XML to really be productive for developers, the dev tools either have to serialize it automatically (.NET Web Services), or allow it to be written “natively” (Ruby / XLinq). Without simplified support, I’d have to ask if the same problem could be solved with plain-text/CSV or an RDBMS.