The fight to control the so-called Web Services market is probably the hottest topic in the IT industry today (apart from the financial problems that is). The major players, Microsoft, IBM, BEA and Oracle have all got significant offerings, all based on XML. The earlier products used to be called Enterprise Application Integration systems, using a variety of technologies, but EAI based on XML related standards is now commonly referred to as Web Services, yet another lot of middleware in fact. While there is a lot of posturing and in- fighting, a lot of progress has been made towards compatibility, largely because there is commercial pressure for systems to work together. Thus each vendor will put forward a solution to a particular problem, invariably generating a counter proposition from one or more of the opposition, but for once in the IT industry they most times get together and compromise on a standard solution, usually in cooperation with W3C, OMG and other reputable bodies.
XML itself is one such standard, in this case a W3C standard, but the others of note in Web Services are SOAP, WSDL, UDDI and XHTML. The later is there to provide a path from HTML to XML. SOAP (Simple Object Access Protocol) is a remote procedure call, tailored to suit the message-based concepts of the Web, simpler than the CORBA standards. SOAP protocols include an envelope which describes the message and how to process it, an optional header to extend functions and the XML message in the body. The transport protocol is normally HTTP, which means that it can pass through firewalls (is this a good or a bad thing?), but it means that it will work between disparate systems.
WSDL (Web Services Definition Language) is an XML language devised for use with SOAP and UDDI to describe what Web services are available in a system.
UDDI (Universal Description, Discovery and Integration) is that part of the Web Services framework , a completely open technical one, which allows enterprises globally to locate Web services, to define how they work together and to specify how information can be shared.
One benefit of these open standards is that older EAI products can evolve and Open Source products are available to offer an option to the bigger suppliers. It is also a blessing to the software tool vendors, again resulting in a wider choice of tools.
Given that there is now considerable progress in XML languages to support the lower-level core services and the middleware mentioned above, it is equally good to note that there has been a very rapid development of industry specific higher-level, or "vertical" schemas. These have developed quickly simply because the supporting standards have matured in time. It is a good example of how cooperation on standards accelerates related developments and benefits everyone. Each sector of industry is developing their own relevant XML schemas. This has happened in the past with EDI but little else in IT. What is happening now is far more advanced than EDI, but that is still the best source of experience in defining needs.
The chemical, pharmaceutical, automotive, retail, aerospace, petroleum, and many other industries have long benefited from global standards, which they are extending into XML systems. Architecture, construction, finance, government and news media have all established committees to define relevant XML schema. Human resources is another industry in need of standards. Those industries mentioned first have a big advantage in that they have more mature and comprehensive committees in place, while others have to go through the in-fighting before a consensus will be reached. But it is happening. It is always easier if there is a dominant force involved, but this also leads to unfortunate diversification; can Ford, General Motors, Toyota, etc. agree on a common standard or will they exploit their power over their own supply chain?
Finally note that while there are probably too many vertical standards, this is not a sign of fragmentation and impending collapse, because they are based on solid lower-level standards.