Booo. XML is designed for representing data. Programming languages are designed for representing behavior. Have a look at the examples of oXML and try writing them out again in a dynamic OO language like Python or Ruby. The XML versions are massively overcomplicated and very hard to read (XML has a noisy syntax). Remember, machines have no problems reading code, it's humans you need to think about.
I can not agree with this enough. XML is a great language for structured data, terrible for programming anything more complicated than a simple series of instructions (à la ant). This is also one of the many reasons I detest XSLT.