Well, if you go deeper down the rabbit hole, XML was a complete and utter waste of time.
This problem was solved in the 60's with S-Expressions.
Not so much. Sexps don't provide a place hang "extra" information. It's been a pain point. While some lisps allowed decorating runtime things (eg objects with attributes, and symbols with property lists), their printed/readable representations were implementation dependent.
There's also a widespread misconception that Scheme is easy to parse. Numbers and all. It's actually very hard to get right. Real scheme parsers are quite large and hairy.
> XML was a complete and utter waste of time.
While XML was ghastly, there was an unmet need. There still is.