SOAP stack

The SOAP stack is a layered set of functionalities that collectively handle the serialization and transport of XML-encoded data. The SOAP stack uses the WSDL file for a Web method to determine the structure of a corresponding proxy table. The SOAP stack also generates SOAP requests corresponding to the select statement submitted to Adaptive Server Enterprise and sends these SOAP requests to a SOAP server. The SOAP stack supports both RPC/encoded and document/literal Web methods.

RPC/encoded methods

The SOAP messages for an RPC/encoded Web method contain an XML element for each method parameter. Messages for an RPC/encoded Web method are encoded according to the SOAP specification. The proxy table representing an RPC/encoded Web method contains a column for each input and output parameter.

NoteIf an RPC/encoded Web method has no input or output parameters, it cannot be mapped to a proxy table. A proxy table for a Web method without parameters would have no columns. A table with no columns cannot be created in Adaptive Server Enterprise.

NoteCurrently, only simple types are mapped to columns. Complex types or arrays used in RPC/encoded Web methods result in the Web method not being mapped to a proxy table.

Document/literal methods

In the SOAP messages for a document/literal Web method, the communicating parties specify the data being transmitted and formatted according to XML schemas incorporated into the WSDL file. Messages for a document/literal Web method are serialized and deserialized according to the WSDL file for the Web method. The proxy table representing a document/literal Web method contains two columns: _inxml and outxml.

The Web Services Interoperability (WSI) Organization, which defines practical interoperability guidelines, recommends using document/literal Web methods to enhance portability. Sybase supports this recommendation.