Introduction to Web Services
The IP camera foundation is strongly tied to existing enterprise standards. One of the key standards that the IP camera is based on is the concept of Web Services. A Web Service is a formal way for applications to communicate with each other over a network.
At its most basic level, Web Services use the following formula:
Web Services = XML + HTTP
In general, a Web Service involves a requester (client) counterpart and a service provider counterpart. The client makes a request regarding a specific action within a particular service. Depending on the client's request, the service provider responds appropriately.
Web Service Description Language (WSDL)
Web Service Description Language (WSDL) provides a way for service providers to describe the basic format of Web Service requests. A WSDL provides the following for network services:
Describes the data or parameters that can be passed to the service. The XML Schema Definition (XSD) is the existing standard for sanctioned data definitions maintained by the W3C. For more information, refer to the following website: http://www.w3.org/XML/Schema
Describes Web Service provided actions.
Describes how data is transferred between the Web Service requester and the Web Service provider, using information such as the protocol and data format.
- Details the Web Service location.
In short, a WSDL is a standard way of describing a web service using XML.
The actual protocol for communication is Service Oriented Architecture Protocol (SOAP). SOAP is a protocol for exchanging XML based messages. It defines the method of communication through remote procedure calls (RPCs) using HTTP.
The following illustrates the basic structure of a WSDL.
Types -- a container for data type definitions using some schema type system (we are using XSD)
Message -- an abstract, typed definition of the data being communicated
Operation -- describes an action supported by the service
Port Type -- a set of operations supported by at least one endpoint
Binding -- a concrete protocol and data format specification for a particular port type
Port -- a single endpoint defined as a combination of a binding and a network address
Service -- a collection of endpoints
For more information, refer to the W3C web site: http://www.w3.org/TR/soap/