180 likes | 282 Views
XML Web Services. Hangning Qiu For CS843. What is XML Web service?. A Web service is a service program that relies on the Web programming model and XML technologies -- It uses a Web programming model in applications that are not browser-based.
E N D
XML Web Services Hangning Qiu For CS843
What is XML Web service? • A Web service is a service program that relies on the Web programming model and XML technologies -- • It uses a Web programming model in applications that are not browser-based. • It uses XML/XSD for messaging and for achieving interoperability.
Categories of Web Services • SOAP and other W3C standards based XML Web services • Non-SOAP standards based XML Web Services • Non-standards based XML Web services
Non-Standards Based XML Web Services • There are many such. An example is: http://www.wichita.gov/services/
Non-SOAP standards based XML Web Services • A perfect example is RSS (Rich Site Summary), originated – 1997, RSS 1.0 - December 2000, widely used for exchanging news reports and other types of human-readable messages. • A consumer example is at http://www.studioxp.com/qiu/xmlnews/
Standard XML Web Services • XML (essential) – Messaging format • SOAP (essential) - Communication • WSDL (optional) - Description • UDDI (optional) - Discovery • Loose coupling - essential feature for achieving unprecedented interoperability
SOAP • Simple Object Access Protocol 1.1: “SOAP is a lightweight protocol for exchange of information in a decentralized, distributed environment. It is an XML based protocol that consists of three parts: an envelope that defines a framework for describing what is in a message and how to process it, a set of encoding rules for expressing instances of application-defined data types, and a convention for representing remote procedure calls and responses.” (W3C, May 2000)
SOAP (continued) • HTTP/1.1 200 OK • Content-Type: text/xml; charset="utf-8" • Content-Length: nnnn • <SOAP-ENV:Envelope • xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" • SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> • <SOAP-ENV:Body> • <m:GetLastTradePriceResponse xmlns:m="Some-URI"> • <Price>34.5</Price> • </m:GetLastTradePriceResponse> • </SOAP-ENV:Body> • </SOAP-ENV:Envelope>
SOAP (continued) • SOAP messaging pattern: • Sender (messages/mapping) Receiver • Request (SOAP messages) Response • Remote method invocations and SOAP messages are mapped to each other – this should be done with Web services tools, and be transparent to application developers!
WSDL • Web Service Description Language 1.1: “WSDL is an XML format for describing network services as a set of endpoints operating on messages containing either document-oriented or procedure-oriented information. The operations and messages are described abstractly, and then bound to a concrete network protocol and message format to define an endpoint. Related concrete endpoints are combined into abstract endpoints (services). WSDL is extensible to allow description of endpoints and their messages regardless of what message formats or network protocols are used to communicate...” (W3C, March 2001)
WSDL (continued) • http://www.w3.org/TR/wsdl.html • WSDL is complementary to SOAP (but does not require SOAP). It is designed to describe types, bindings and other relevant information of Web services. • Language and platform independent. • Should be transparent to application developers!
UDDI • Universal Description, Discovery and Integration: it defines a a SOAP-based XML Web service whose sole purpose is to categorize and locate WSDL-based descriptions of Web services. • It is a “meta service”. • http://uddi.org/specification.html
Global XML Web Services Architecture • http://www.gotdotnet.com/team/XMLwebservices/gxa_overview.aspx • This initiative aims to provide additional capabilities to baseline XML Web services in the areas including: security, message routing, reliable messaging, and transactions.
Case Study: An XML Web Service Solution • This is a case study that tries to provide an XML Web service solution to the voting system in our program assignments.
The Future of XML Web Services • More work will be done in three major areas: • Web service infrastructures will be built - as addressed with the GXA initiative. • SOAP, WSDL and related standards will further evolve. • Vender support in form of toolkits and frameworks will improve.
Limitations • Not appropriate for building time sensitive, life critical, tightly coupled, non-distributed systems
Conclusions • A simple, loosely coupled, messaging framework upon which developers can build sophisticated distributed business solutions. • Has a bright future.