Daniel, I have to say your post was well written and well thought out. I hadn't considered the idea of using XML on the input side but it does have certain advantages. For one, I could define an XML schema to do some, or all, of the input validation.
In our application we take the input, populate a DataTransferObject with it, send it to the business tier, get a DataTransferObject back, convert it to XML and then render it. Using XML the input side would be a mirror of the output. I'd like to see a proposal on how this could work. Ralph
