Figure 1-1: Transforming XML into a variety of output formats using XSLT. Simple Object Access Protocol Any networked computing environment must be able to invoke methods across both process and physical machine boundaries. This capability requires a means for locat- ing a remote process, serializing method parameters, invoking the remote method, and deserializing the return value — all in a secure manner. Many protocols currently provide  this  functionality  including  DCE,  Microsoft’s  DCOM,  CORBA’s  IIOP,  Java RMI and EJB, and many others. However, they all require proprietary class libraries to be loaded on both the client and remote host in order to inter-communicate. This requirement has greatly restricted distributed application interoperability. Simple Object Access Protocol (SOAP) is a natural evolution of existing distrib- uted technologies. SOAP is an encoding of a remote method invocation (method parameters,  return  type,  and  error  codes)  within  an  XML  document  that  can  be easily  understood  by  any  client  using  an  XML  parser.  (XML  parsers  are  freely available in every programming language and platform combination.) The SOAP document is typically sent over HTTP, the core protocol of the Web. HTTP enables greater interoperability because firewalls typically don’t block HTTP traffic, and it XSLT Stylesheet Web Printed Document (PDF, Postscript, Text) Other output medium: DVD, wireless device, Web service, etc. XML Source Document XSLT Transformation 4 XMLSPY Handbook