ValueTree was never intended to be a 1:1 mapping for XML. It’s a subset.
I designed its structure so that you can go ValueTree->XML->ValueTree without loss of data (to make it easy to store a ValueTree), but the XML->ValueTree converter was only designed to load XML that came from a ValueTree, not arbitrary XML data from other sources.
The class could be extended to handle text tags, but that’d involve adding extra baggage to handle it as a special case. And given that lots of people have been using ValueTrees intensively for many years and this has never been requested before, I guess the demand for it is low!
Converting the XML as a step before converting it to a ValueTree is easy enough - you’d just scan through the XmlElements for text nodes and move them into attributes. It’d be a pretty quick operation.
Bear in mind though that if you need to round-trip this document and convert them back to text nodes after modifying it, you’ll need to be a bit smarter than just turning them into attributes - you’d probably want to convert them into normal XML tag nodes with a special name, to retain the overall structure.