DTDs mercifully aside, there's this: http://okmij.org/ftp/Scheme/SXML.html
I'm not sure what example in this thread you consider to be throwing information away - in a case like
<Term term="slick">
where the attribute name is clearly redundant and exists only to satisfy the syntax, nothing is lost in the transformation to (term "slick"