I have a very fundamental question. Is a system called a WebService only if there is a corresponding WSDL developed and use UDDI? How about a system that accept SOAP messages over HTTP based on some common understanding between the interacting parties. Is that called Webservice as well? Thanks for your time.
A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards.
As per this definition, a WSDL based description of the interface is mandatory.
Thanks for the quote and response, Pankaj. I guess, what I am getting is that SOAP over HTTP could be used as a mechanism for a Service oriented architecture, but it is not a true Web Service.
I think if you are using SOAP and HTTP, than its a Web service of sorts. In my book I define a Web service in the J2EE space as a service that adheres to the recommendations of the WS-I Basic Profile. That's a pretty specific definition that does include the use of WSDL, but its important to understand that this defintion is just one of many.