XML aims to be both human-readable and machine-readable, but manages neither. It's only really worth it if you actually need the complexity or extensibility, otherwise it's just a major pain to map XML structures to any sensible type representation. I've been forced to work with some of the protocols that people like to present as examples of good XML usage and I hate every single one of them.
Fuck YAML though. That spec is longer and more complex than any other markup language I know of and it doesn't have a single fully compliant implementation.
I'm okay with the "human-readability," but I've never been happy with the "machine-readibility" of XML. Usually I just want to pull a few values from an API return, yet every XML library assumes I want the entire file in a data structure that I can iterate through. It's a waste of resources and a pain in the ass.
Even though it's not the "right" way, most of the time I just use regex to grab whatever exists between an opening and closing tag. If I'm saving/loading data from my own software, I just use a serialization library.
You just have to have different ways to turn different tags into stuff in your program and that's a huge amount of overhead to think about when all I want is a hash map and maybe an array.
From my point of view : it has a hudge ecosystem with tons of robust libraries. This does not make it perfect, but for an industrial point of view, you don't look for new shiny clean things. (My point of view is 15 years old yet...)
It’s more the fault of the implementation and documentation.
We have a WCF service with an odd configuration and nobody has been able to integrate with it that didn’t use Microsoft tools. It’s definitely not XML’s fault.
(That service has been replaced with a REST API now)
As someone who works with both, readability is the utmost important thing for me, and XML is cumbersome and has more characters to sift through to find what I'm lookin for.
I don't miss XML, but at least it has support for comments. On the other hand, I wish whitespace in XML wasn't significant. JSON needs to die in favor of JSON 5.
Nah, XML is just a slightly older fad. Let's go back to S Expressions. They've been in use for over 60 years and have significantly better readability.
I am so old that I worked with SGML. Compared to that, XML is a lovely language. And sometimes I still miss writing XSLT to quickly transform some XML documents. These days you can do similar things with JSON, of course. But it's not as easy and standardized as the XML tooling.