Let's see:
. No native support for numbers, dates, booleans or lists. The latter can be implemented using subelements, but it's so cumbersome that you skimped on that and used a non-typed string instead (the database ports).
. Redundant verbosity. Root elements, closing tags, way too much crap to be manually inserted.
. XML parsers are huge, complex beasts which have no place in many smaller applications.
. Being XML, it leaves way too many possibilities for crappy developers. Namespaces in config files, oh joy!
http://harmful.cat-v.org/software/xml/