Well, I know that SGML folks have always seen SGML as the solution to
everything, but I don't think they've erased the evidence of where it came
from, which was device-independent typographical markup.
If you were to design something for processing data (not just rendering it),
you'd have support for the kind of data models recognised in the database
world; you'd have integrity constraints (including data types and primary
keys); you'd have declarative query languages and report writers rather than
navigational APIs and style sheets; you'd have relationships rather than
hyperlinks; and (to be trivial about it) you'd have examples in the domain
of customers and orders, not books and poems.
It so happens that XML is better for doing application-to-application data
interchange than things (like ASN.1) that were supposedly designed for the
job, so I don't begrudge it. But XML (including its friends and relations)
is full of things that wouldn't be there if that were its original primary
purpose, and I really don't see how one can claim otherwise.
Mike Kay