What are XML Web Services?

Published: May 2001

Key Points

  • XML Web services allow applications to share data.
  • XML Web services can be called across platforms and operating systems and regardless of programming language.
  • .NET is Microsoft's platform for XML Web services.

The XML Revolution
Although deceptively simple, XML is turning the way we build and use software inside out. The Web revolutionized how users talk to applications. XML is revolutionizing how applications talk to other applications--or more broadly, how computers talk to other computers--by providing a universal data format that lets data be easily adapted or transformed. XML-based standards, which include SOAP and UDDI, comprise the open methodology for application-to-application communication known as XML Web services.

XML Web services: A Universal Language
XML Web services allow applications to communicate regardless of operating system or programming language via the Internet. They can be implemented on any platform and are defined through public standards organizations such as the W3C. And with XML Web services, not only can applications share data, but they can also invoke capabilities from other applications without regard to how other applications were built. Sharing data through XML allows them to be independent of each other while simultaneously giving them the ability to loosely link themselves into a collaborating group that performs a particular task.

Web sites vs. XML Web services
Web sites are about presenting information to a user: they are the communication vehicle for servers to talk to users. XML Web services, on the other hand, offer a direct means for applications to interact with other applications. Applications hosted internally, as well as on remote systems, can communicate via the Internet by using XML and SOAP messages.

How XML Web services Connect Applications
Here's a simple example: say you have an inventory system. If you don't connect it to anything else, it's not very valuable. You can track inventory, but it's a lot of work, and what that one system can do all by itself is limited. Every item you sell needs to be entered not only into your inventory system, but also separately into your accounting system, and your customer account records. Then you need to remember to order more of that item from your suppliers next time you place an order. The cost/benefit ratio is largely unappealing, because the gains from the system are close to the overhead costs of using it.

However, if you connect your inventory system to your accounting system with XML, it gets more interesting. Now, whenever you buy or sell something, the implications for your inventory and your cash flow can be tracked in one step. If you go further, and connect your warehouse management system, customer ordering system, supplier ordering systems, and your shipping company with XML, suddenly that inventory management system is worth a lot: you can do end-to-end management of your business while dealing with each transaction only once, instead of once for every system it affects. A lot less work, and a lot less room for errors.

These connections can be made easily using XML Web services. XML Web services allow the applications to share information via the Internet, regardless of the operating system or back-end software that the application is using.

.NET is about XML Web services
Microsoft's XML Web services platform is .NET. The first set of XML Web services Microsoft is building is codenamed "HailStorm".

© 2001 Microsoft Corporation. All rights reserved. Terms of use.