SOAP/XML services use data bindings contractually bound by WSDL and auto- generated by wsdl2h and soapcpp2 (see Service Bindings). Plain data bindings are adopted from XML schemas as part of the WSDL types section or when running wsdl2h on a set of schemas to produce non-SOAP-based XML data bindings.
The following readers and writers are C/C++ data type (de)serializers auto- generated by wsdl2h and soapcpp2. Run soapcpp2 on this file to generate the (de)serialization code, which is stored in soapC.c[pp]. Include "soapH.h" in your code to import these data type and function declarations. Only use the soapcpp2-generated files in your project build. Do not include the wsdl2h- generated .h file in your code.
Data can be read and deserialized from:
- an int file descriptor, using soap->recvfd = fd
- a socket, using soap->socket = (int)...
- a C++ stream (istream, stringstream), using soap->is = (istream*)...
- a C string, using soap->is = (const char*)...
- any input, using the soap->frecv() callback
Data can be serialized and written to:
- an int file descriptor, using soap->sendfd = (int)...
- a socket, using soap->socket = (int)...
- a C++ stream (ostream, stringstream), using soap->os = (ostream*)...
- a C string, using soap->os = (const char**)...
- any output, using the soap->fsend() callback
The following options are available for (de)serialization control:
- soap->encodingStyle = NULL; to remove SOAP 1.1/1.2 encodingStyle
- soap_mode(soap, SOAP_XML_TREE); XML without id-ref (no cycles!)
- soap_mode(soap, SOAP_XML_GRAPH); XML with id-ref (including cycles)
- soap_set_namespaces(soap, struct Namespace *nsmap); to set xmlns bindings
Top-level root elements of schema "http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01"
- <wsdd:Hello> _wsdd__Hello
soap_GET__wsdd__Hello(
struct soap*,
const char *URL,
_wsdd__Hello*);
soap_PUT__wsdd__Hello(
struct soap*,
const char *URL,
_wsdd__Hello*);
soap_POST_send__wsdd__Hello(
struct soap*,
const char *URL,
_wsdd__Hello*);
"http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":HelloType is a complexType.
Definition: wsdd.h:130
- <wsdd:Bye> _wsdd__Bye
soap_GET__wsdd__Bye(
struct soap*,
const char *URL,
_wsdd__Bye*);
soap_PUT__wsdd__Bye(
struct soap*,
const char *URL,
_wsdd__Bye*);
soap_POST_send__wsdd__Bye(
struct soap*,
const char *URL,
_wsdd__Bye*);
soap_POST_recv__wsdd__Bye(
struct soap*,
_wsdd__Bye*);
"http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":ByeType is a complexType.
Definition: wsdd.h:164
- <wsdd:Probe> _wsdd__Probe
soap_GET__wsdd__Probe(
struct soap*,
const char *URL,
_wsdd__Probe*);
soap_PUT__wsdd__Probe(
struct soap*,
const char *URL,
_wsdd__Probe*);
soap_POST_send__wsdd__Probe(
struct soap*,
const char *URL,
_wsdd__Probe*);
"http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":ProbeType is a complexType.
Definition: wsdd.h:198
- <wsdd:ProbeMatches> _wsdd__ProbeMatches
"http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":ProbeMatchesType is a complexType.
Definition: wsdd.h:226
- <wsdd:Resolve> _wsdd__Resolve
soap_GET__wsdd__Resolve(
struct soap*,
const char *URL,
_wsdd__Resolve*);
soap_PUT__wsdd__Resolve(
struct soap*,
const char *URL,
_wsdd__Resolve*);
soap_POST_send__wsdd__Resolve(
struct soap*,
const char *URL,
_wsdd__Resolve*);
"http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":ResolveType is a complexType.
Definition: wsdd.h:288
- <wsdd:ResolveMatches> _wsdd__ResolveMatches
"http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":ResolveMatchesType is a complexType.
Definition: wsdd.h:314
- <wsdd:Types> _wsdd__Types
soap_GET__wsdd__Types(
struct soap*,
const char *URL,
_wsdd__Types*);
soap_PUT__wsdd__Types(
struct soap*,
const char *URL,
_wsdd__Types*);
soap_POST_send__wsdd__Types(
struct soap*,
const char *URL,
_wsdd__Types*);
wsdd__QNameListType _wsdd__Types
Top-level root element "http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":Types of XSD type "htt...
Definition: wsdd.h:489
- <wsdd:Scopes> _wsdd__Scopes
soap_GET__wsdd__Scopes(
struct soap*,
const char *URL,
_wsdd__Scopes*);
soap_PUT__wsdd__Scopes(
struct soap*,
const char *URL,
_wsdd__Scopes*);
soap_POST_send__wsdd__Scopes(
struct soap*,
const char *URL,
_wsdd__Scopes*);
"http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":ScopesType is a complexType with simpleConten...
Definition: wsdd.h:426
- <wsdd:XAddrs> _wsdd__XAddrs
soap_GET__wsdd__XAddrs(
struct soap*,
const char *URL,
_wsdd__XAddrs*);
soap_PUT__wsdd__XAddrs(
struct soap*,
const char *URL,
_wsdd__XAddrs*);
soap_POST_send__wsdd__XAddrs(
struct soap*,
const char *URL,
_wsdd__XAddrs*);
wsdd__UriListType _wsdd__XAddrs
Top-level root element "http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":XAddrs of XSD type "ht...
Definition: wsdd.h:495
- <wsdd:MetadataVersion> _wsdd__MetadataVersion
unsigned int _wsdd__MetadataVersion
Top-level root element "http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":MetadataVersion of XSD...
Definition: wsdd.h:498
- <wsdd:SupportedMatchingRules> _wsdd__SupportedMatchingRules
wsdd__UriListType _wsdd__SupportedMatchingRules
Top-level root element "http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":SupportedMatchingRules...
Definition: wsdd.h:501
- <wsdd:Security> _wsdd__Security
soap_POST_send__wsdd__Security(
struct soap*,
const char *URL,
_wsdd__Security*);
"http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":SecurityType is a complexType.
Definition: wsdd.h:374
- <wsdd:Sig> _wsdd__Sig
soap_GET__wsdd__Sig(
struct soap*,
const char *URL,
_wsdd__Sig*);
soap_PUT__wsdd__Sig(
struct soap*,
const char *URL,
_wsdd__Sig*);
soap_POST_send__wsdd__Sig(
struct soap*,
const char *URL,
_wsdd__Sig*);
soap_POST_recv__wsdd__Sig(
struct soap*,
_wsdd__Sig*);
"http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":SigType is a complexType.
Definition: wsdd.h:394
- <wsdd:AppSequence> _wsdd__AppSequence
"http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01":AppSequenceType is a complexType with complex...
Definition: wsdd.h:448