From the description of the architecture of Web services, there are four primary interrelated technologies: XML, SOAP, WSDL and UDDI. In this section, they are seriatim explained. Foundation: XML XML (EXtensible Markup Language) is the basic foundation of Web services. It provides a base language for defining data and how to process it. XML represents a family of related specifications published and maintained by the World Wide Web Consortium (W3C) and others (Newcomer 2002). XML was developed to overcome limitations of HTML, especially to better support dynamic content creation and management.
HTML is good for defining and maintaining static content, but in fact, content needs to be generated and digested dynamically. In this condition, XML are used to define any number of elements that associate meaning with data (Newcomer 2002). XML solves a key technology requirement that appears in many places. By offering a standard, flexible and inherently extensible data format, XML significantly reduces the burden of deploying the many technologies needed to ensure the success of Web services (Booth et al. , 2004). Communication: SOAP
SOAP (Simple Object Access Protocol) SOAP was initially created by Microsoft and later developed in collaboration with Developmentor, IBM, Lotus, and UserLand (Curbera, F. et al. , 2002). It is a collection of XML-based technologies, defines an envelope for Web services communication - mappable to HTTP and other transports - and provides a serialization format for transmitting XML documents over a network and convention for representing RPC (remote procedure calls) interactions. It is used to handle cross-platform interactions. (Newcomer 2002).
At its core, a SOAP message has a very simple structure: an XML element with two child elements, one of which contains the header and the other the body. The header contents and body elements are themselves arbitrary XML. In addition to the basic message structure, the SOAP specification defines a model that dictates how recipients should process SOAP messages. The message model also includes actors, which indicate who should process the message. A message can identify actors that indicate a series of intermediaries that process the message parts meant for them and pass on the rest (Curbera, F.
et al. , 2002). Description: WSDL WSDL (Web Service Description Language) is the current standard way to describe Web services. It is an XML-based technology, defines Web services interfaces, data and message types, interaction patterns, and protocol mappings (Newcomer 2002). WSDL describes Web services starting with the messages that are exchanged between the requester and provider agents. The messages themselves are described abstractly and then bound to a concrete network protocol and message format (Booth et al. , 2004).
UDDI (Universal Description, Discovery and Integration) is produced by an independent consortium of vendors, founded by Microsoft, IBM, and Ariba, to develop an Internet standard for Web service description registration and discovery. UDI provides a registry and discovery mechanism for client applications to find other Web services dynamically. Simply, it provides a way to publish the service the provider offer and find the services the requestor may want to use. It is used for storing and categorizing business information and for retrieving pointers to Web service interfaces.
In reality, UDDI is much more like a replicated database service accessible over the Internet. The data model is defined in XML and SOAP application programming interfaces (APIs) for registering and discovering business information, including the Web services a business publishes. (Newcomer 2002). Web services technologies provide a language-neutral, environment-neutral programming model that accelerates application integration inside and outside the enterprise (Gottschalk, K. et al. 2002). Compared with other current applications, Web services have many advantages.
Using the Web Service model, companies can provide new services and products without the investment and delays a traditional company requires. They may develop new Web Services by reusing and/or combining existing ones. For instance, the portal Web Service provides a set of high level Features by orchestrating lower-level Web services for portfolio management, stock quote and others (Tsalgatidou and Pilioura, 2002). Web services can interact with any other Web services. Interoperability is promoted by minimizing the requirements for shared understanding.
XML-based interface definition language (NASSL), an XML-based service description (WDS) and a protocol of collaboration and negotiation are the only requirements for shared understanding between a service provider and a service requester. By limiting what is absolutely required for interoperability, collaborating Web services can be truly platform and language independent. By limiting what is absolutely required, Web Services can be implemented using a large number of different underlying infrastructures (IBM 2000).