XML is also very ubiquitous in library support, having been around for over 15 years.
I think the most negative reaction to XML is the extreme overuse for things like component configuration, where there's no defaults, and every property and class name must be specified. Also, the misguided tag closing (<tag>content</> would have sufficed) adds to the verbosity.
1: https://plus.google.com/118095276221607585885/posts/RK8qyGVa...
Urgh... maybe the data I have had the misfortune of working with are not exercising the proper options. The ratio of metadata to data always seems too high.
Overuse is likely the cause of my dislike.
For me, it was either use an off the shelf parser or write my own. The config files at the time were all like apache's config - various combinations of weird syntax.
XML came with parsers off the shelf and gave you some validation up front. If there were other tools at the time available, I probably hadn't found them, and XML had a lot of buzz so it was easy to find.
These days all the libraries have parsers for a variety of easy to use data formats, from JSON and YAML to Protobufs and ini files.
One of my favorite sayings is still "XML is like violence. If it does not solve the problem, you are not using enough."
Some warped sense of ease from using Java and .NET libraries to read / write XML?