To some people this could be a very simple question today, but I think that there are still some confused people around. I remember one of the last projects I was involved, we were build an application that should exchange information with an external application, the technical person that spoke to us when we tried to connect both applications called web service to a simple ASP page that returned data in a raw string. Well this situations leads me to this post.
When we talk about web service we are referring to a technology stack that include HTTP and SOAP among others. A web service is a software component that can be accessed by sending SOAP messages following the rules defined in the corresponding WSDL document. For those that are not familiar with this terms here is a short glossary with some common terminology in the world of Web services:
- SOAP: Simple Object Access Protocol, it specifies how to create the messages, its parts, how each part should be used.
- WSDL: Web Service Definition Language, it is just a XML document that describes how to interact with an specific web service. Every Web Service must have an associated WSDL. The only thing needed to consume a web service is its WSDL.
- HTTP: Hyper Text Transfer Protocol, it is the main transport protocol of Internet.
- UDDI: Universal Description, Discovery and Integration, defines how to maintain a structure of directories to share information about web services.