return values, then programmatic modifications might be needed to meet the SOAP specification. Not all PC equipment is created equal. For users of very low-end sys- tems, client-side processing could spark trouble. If extensive client-side processing is performed on these PCs, it might cause them to crash or, at best, slow to a crawl. Pros Here are some of the advantages of SOAP: nn SOAP is a lightweight protocol, allowing the client to submit only necessary pieces of information as transient data to the server instead of requiring an entire Web page to be submitted, although it is flexible enough to support server-side processing from a page request, if necessary. nn SOAP, unlike many other distributed communication solutions, can be easily integrated on the client and server PCs. With .NET, the effort to communicate in a client/server scenario is minimal. nn SOAP can be leveraged as an internal or external type of HTTP com- municator without changing the code to adapt to both topologies. Internal communication is known as remoting, whereas external communication is known as Web services. nn SOAP is a protocol that sits atop the host HTTP protocol. Because HTTP is a well-known and widely used protocol, remote Web-based communication is no longer a challenge. nn SOAP is documented as a recommendation by the W3C. nn SOAP is recognized and used by many well-known software vendors. nn SOAP solves the problem of transporting data through firewalls for server-side processing of user requests. nn SOAP used in .NET is almost transparent. Its like writing functions: It is literally as easy as referencing a DLL in your application. nn SOAP in .NET is built into the framework, so there is nothing else to install. The developer establishes the Web reference, and Microsoft IntelliSense can help you do the rest. The code is similar to referencing and calling a local COM+ DLL. (See Figure 1.3.) What Are Web Services? 13