It doesn't do everything. XML isn't so much a standard by itself as a system of rules for building other standards. Right now, there's a flowering of XML standards across a variety of businesses, and the challenge for any company is implementing a system that will be around in the long run. The threat to XML is that there will be too many competing standards, making it impossible for a business to choose one that will be compatible with its partners' implementations. The success of XML in general, and any specific standard, depends on the development of particular implementations which are then broadly adopted.
Standards tend to exist in a state of tension, pulled between twin forces.
To be successful, any given standard needs to build in enough functionality to satisfy users, while not being bogged down by the process of hashing out that specification. Release a standard too quickly, and it likely will not cover enough ground to be useful. Take too long to develop a standard, and it's obsolete before it's released. The tension that defines standards in general applies to XML in a special way. Because XML is more of a metalanguage than a language itself, it is easy to create standards that seem complete enough for B2B communication.