Looking at the XML Schema for SOAP and specifically the SOAPFault I appear to be enjoying a challenge :)
I have a SOAPFault document response that is failing to validate using the validate on the class generated from the SOAP Schema.
The Response looks like:-
<?xml version="1.0"?>
<SOAP-ENV:Fault xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ file:///c:/eclipse/workspace/SOAPEnvelope/SOAPEvelope.xsd">
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring>An error was detected while executing the Web Service request. (10893)</faultstring>
<detail>
<ns1:FaultDetail xmlns:ns1="urn:soap-fault:details">
<errorMessage>The example parameter was not of type intPrgs (10937)</errorMessage>
<requestID>7c02cf73648f42b9:-32c9e224:10ecc18015b:-7ff8#48</requestID>
</ns1:FaultDetail>
</detail>
</SOAP-ENV:Fault>
and the SOAPFault Schema section is:-
<xs:element name="Fault" type="tns:Fault" />
<xs:complexType name="Fault" final="extension" >
<xs:annotation>
<xs:documentation>
Fault reporting structure
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="faultcode" type="xs:QName" />
<xs:element name="faultstring" type="xs:string" />
<xs:element name="faultactor" type="xs:anyURI" minOccurs="0" />
<xs:element name="detail" type="tns:detail" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="detail">
<xs:sequence>
<xs:any namespace="##any" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax" />
</xs:complexType>