Genivia Home Documentation
XML Data Binding

updated Wed Oct 30 2024 by Robert van Engelen
 
XML Data Binding

Top-level root element "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":SecurityContextToken of XSD type "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":SecurityContextTokenType.

Top-level root element "http://www.w3.org/2001/04/xmlenc#":CipherData of type "http://www.w3.org/2001/04/xmlenc#":CipherDataType. Note: use wsdl2h option -g to auto-generate a top-level root element declaration and processing code. Top-level root element "http://www.w3.org/2001/04/xmlenc#":CipherReference of type "http://www.w3.org/2001/04/xmlenc#":CipherReferenceType. Note: use wsdl2h option -g to auto-generate a top-level root element declaration and processing code. Top-level root element "http://www.w3.org/2001/04/xmlenc#":EncryptedData of type "http://www.w3.org/2001/04/xmlenc#":EncryptedDataType. Note: use wsdl2h option -g to auto-generate a top-level root element declaration and processing code. Top-level root element "http://www.w3.org/2001/04/xmlenc#":EncryptedKey of type "http://www.w3.org/2001/04/xmlenc#":EncryptedKeyType. Note: use wsdl2h option -g to auto-generate a top-level root element declaration and processing code. Top-level root element "http://www.w3.org/2001/04/xmlenc#":AgreementMethod of type "http://www.w3.org/2001/04/xmlenc#":AgreementMethodType. Note: use wsdl2h option -g to auto-generate a top-level root element declaration and processing code. Top-level root element "http://www.w3.org/2001/04/xmlenc#":EncryptionProperties of type "http://www.w3.org/2001/04/xmlenc#":EncryptionPropertiesType. Note: use wsdl2h option -g to auto-generate a top-level root element declaration and processing code. Top-level root element "http://www.w3.org/2001/04/xmlenc#":EncryptionProperty of type "http://www.w3.org/2001/04/xmlenc#":EncryptionPropertyType. Note: use wsdl2h option -g to auto-generate a top-level root element declaration and processing code.

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.

XML content can be retrieved from:

  • a file descriptor, using soap->recvfd = fd
  • a socket, using soap->socket = ...
  • a C++ stream, using soap->is = ...
  • a buffer, using the soap->frecv() callback

XML content can be stored to:

  • a file descriptor, using soap->sendfd = fd
  • a socket, using soap->socket = ...
  • a C++ stream, using soap->os = ...
  • a buffer, using the soap->fsend() callback

Top-level root elements of schema "http://www.w3.org/2001/04/xmlenc#"

  • <xenc:CipherData> (use wsdl2h option -g to auto-generate)
  • <xenc:CipherReference> (use wsdl2h option -g to auto-generate)
  • <xenc:EncryptedData> (use wsdl2h option -g to auto-generate)
  • <xenc:EncryptedKey> (use wsdl2h option -g to auto-generate)
  • <xenc:AgreementMethod> (use wsdl2h option -g to auto-generate)
  • <xenc:ReferenceList> _xenc__ReferenceList
    // Reader (returns SOAP_OK on success):
    soap_read__xenc__ReferenceList(struct soap*, struct _xenc__ReferenceList*);
    // Writer (returns SOAP_OK on success):
    soap_write__xenc__ReferenceList(struct soap*, struct _xenc__ReferenceList*);
    Top-level root element "http://www.w3.org/2001/04/xmlenc#":ReferenceList.
    Definition xenc.h:249
  • <xenc:EncryptionProperties> (use wsdl2h option -g to auto-generate)
  • <xenc:EncryptionProperty> (use wsdl2h option -g to auto-generate)
Note
Use wsdl2h option -g to auto-generate a top-level root element declaration and processing code.

Top-level root element "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":Identifier of XSD type xs:anyURI.

Top-level root element "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":Instance of XSD type xs:string.

Top-level root element "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":DerivedKeyToken of XSD type "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":DerivedKeyTokenType.

Note
Use wsdl2h option -g to auto-generate a top-level root element declaration and processing code.

Top-level root element "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":Name of XSD type xs:anyURI.

Top-level root element "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":Label of XSD type xs:string.

Top-level root element "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":Nonce of XSD type xs:base64Binary.

Top-level attribute "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":Instance of simpleType xs:string.

Top-level attribute "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":Nonce of simpleType xs:base64Binary.

Top-level attribute "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512":Length of simpleType xs:unsignedLong.

Note
Use wsdl2h option -g to auto-generate a top-level attribute declaration and processing code.

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 in XML and deserialized from:

  • a file descriptor, using soap->recvfd = fd
  • a socket, using soap->socket = ...
  • a C++ stream, using soap->is = ...
  • a buffer, using the soap->frecv() callback

Data can be serialized in XML and written to:

  • a file descriptor, using soap->sendfd = fd
  • a socket, using soap->socket = ...
  • a C++ stream, using soap->os = ...
  • a buffer, 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-sx/ws-secureconversation/200512"

  • <SecurityContextToken> (use wsdl2h option -g to auto-generate)
  • <Identifier> _wsc__Identifier
    // Reader (returns SOAP_OK on success):
    soap_read__wsc__Identifier(struct soap*, char*);
    // Writer (returns SOAP_OK on success):
    soap_write__wsc__Identifier(struct soap*, char*);
  • <Instance> _wsc__Instance
    // Reader (returns SOAP_OK on success):
    soap_read__wsc__Instance(struct soap*, char*);
    // Writer (returns SOAP_OK on success):
    soap_write__wsc__Instance(struct soap*, char*);
  • <DerivedKeyToken> (use wsdl2h option -g to auto-generate)
  • <Name> _wsc__Name
    // Reader (returns SOAP_OK on success):
    soap_read__wsc__Name(struct soap*, char*);
    // Writer (returns SOAP_OK on success):
    soap_write__wsc__Name(struct soap*, char*);
  • <Label> _wsc__Label
    // Reader (returns SOAP_OK on success):
    soap_read__wsc__Label(struct soap*, char*);
    // Writer (returns SOAP_OK on success):
    soap_write__wsc__Label(struct soap*, char*);
  • <Nonce> _wsc__Nonce
    // Reader (returns SOAP_OK on success):
    soap_read__wsc__Nonce(struct soap*, char*);
    // Writer (returns SOAP_OK on success):
    soap_write__wsc__Nonce(struct soap*, char*);