Or, the application could check for currency formats but it is not necessary. It all works. It is not complex. It could be very onerous for companies that have pre-existing XML data and applications. Elements contain significant data.
Attributes contain significant data.
My job is to supply solutions for encrypting that data if there is a need for it. And, there is a need for it. Restricting the flexibility of business applications is not a good way to simplify. Attributes were designed into XML to be used. I admit that as a designer I am looking at these issues from a business perspective rather than an academic perspective.