{ "type": "interface",
  "qname": "mx.rpc.soap.ISOAPDecoder",
"baseInterfaceNames": [
"mx.rpc.xml.IXMLDecoder"]
,
    "description": "Decodes the SOAP response for a particular operation.",
  "members": [
  { "type": "accessor",
    "access": "read-write",
    "return": "Boolean",
    "qname": "forcePartArrays",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Determines whether or not a single or empty return value for an output message part that is defined as an array should be returned as an array containing one (or zero, respectively) elements. This is applicable for document/literal &quot;wrapped&quot; web services, where one or more of the elements that represent individual message parts in the &quot;wrapper&quot; sequence could have the maxOccurs attribute set with a value greater than 1. This is a hint that the corresponding part should be treated as an array even if the response contains zero or one values for that part. Setting forcePartArrays to true will always create an array for parts defined in this manner, regardless of the number of values returned. Leaving forcePartArrays as false will only create arrays if two or more elements are returned."},
  { "type": "accessor",
    "access": "read-write",
    "return": "Boolean",
    "qname": "ignoreWhitespace",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Determines whether the decoder should ignore whitespace when processing the XML of a SOAP-encoded response. The default should be <code>true</code> and thus whitespace not preserved. If an XML Schema type definition specifies a <code>whiteSpace</code> restriction set to <code>preserve</code> then ignoreWhitespace must first be set to <code>false</code>. Conversely, if a type <code>whiteSpace</code> restriction is set to <code>replace</code> or <code>collapse</code> then that setting is be honored even if ignoreWhitespace is set to <code>false</code>."},
  { "type": "accessor",
    "access": "read-write",
    "return": "String",
    "qname": "resultFormat",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Determines how the SOAP-encoded XML result is decoded. A value of <code>object</code> specifies that the XML is decoded into an object structure as specified in the WSDL document. A value of <code>xml</code> specifies that the XML is left as XMLNodes. A value of <code>e4x</code> specifies that the XML will be accessible using ECMAScript for XML (E4X) expressions."},
  { "type": "accessor",
    "access": "read-write",
    "return": "String",
    "qname": "headerFormat",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Determines how the SOAP-encoded headers are decoded. A value of <code>object</code> specifies that each header XML node is decoded into a SOAPHeader object, and its <code>content</code> property is an object structure as specified in the WSDL document. A value of <code>xml</code> specifies that the XML is left as XMLNodes. A value of <code>e4x</code> specifies that the XML should be accessible using ECMAScript for XML (E4X) expressions."},
  { "type": "accessor",
    "access": "read-write",
    "return": "String",
    "qname": "multiplePartsFormat",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Determines the type of the default result object for calls to web services that define multiple parts in the output message. A value of &quot;object&quot; specifies that the lastResult object will be an Object with named properties corresponding to the individual output parts. A value of &quot;array&quot; would make the lastResult an array, where part values are pushed in the order they occur in the body of the SOAP message. The default value for document- literal web services is &quot;object&quot;. The default for rpc services is &quot;array&quot;. The multiplePartsFormat property is applicable only when resultFormat=&quot;object&quot; and ignored otherwise."},
  { "type": "accessor",
    "access": "read-write",
    "return": "mx.rpc.wsdl.WSDLOperation",
    "qname": "wsdlOperation",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "A WSDLOperation defines the SOAP binding styles and specifies how to decode a SOAP result."},
  { "type": "method",
    "qname": "decodeResponse",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Decodes a SOAP response into a result and headers.",
    "tags": [
    {  "tagName": "param",
           "values": ["response The SOAP response object."]},
        {  "tagName": "return",
           "values": ["A SOAPResult object containing the response."]}  ],
      "return": "mx.rpc.soap.SOAPResult",
      "params": [{ "name": "response", "type": "*"}]}
  ]
  }
