SOAP 1.2 LC issue: Two inconsistencies in SOAP-defined fault codes

The schema for the SOAP 1.2 envelope [1] defines a faultcodeEnum which
is used by the Value EII in the SOAP fault:

<xs:complexType name="faultcode">
  <xs:sequence>
    <xs:element name="Value" type="tns:faultcodeEnum"/>
    <xs:element name="Subcode" type="tns:subcode" minOccurs="0"/>
  </xs:sequence>
</xs:complexType>

<xs:simpleType name="faultcodeEnum">
  <xs:restriction base="xs:QName">
    <xs:enumeration value="tns:DataEncodingUnknown"/>
    <xs:enumeration value="tns:DTDNotSupported"/>
    <xs:enumeration value="tns:MustUnderstand"/>
    <xs:enumeration value="tns:Receiver"/>
    <xs:enumeration value="tns:Sender"/>
    <xs:enumeration value="tns:VersionMismatch"/>
  </xs:restriction>
</xs:simpleType>

However, the list is not consistent with the list in [2] which does not
include "DTDNotSupported". I believe the consensus on this issue, which
was reached in solving issue 191 [5], is that we do not define a
"DTDNotSupported" fault code in which case it should be deleted from the
schema.

The other inconsistency is that we in the table do not indicate whether
DataEncodingUnknown is a top-level fault code or a subcode. The place
this comes up is in the HTTP binding where we map the top-level fault
codes to HTTP fault codes. This was discussed as part of resolving issue
196 [3] and I believe the consensus was to make it a subcode of the
Sender code.

FWIW, I can live with it as a top-level fault, just don't want it to be
an oversight.

Henrik Frystyk Nielsen
mailto:henrikn@microsoft.com

[1] http://www.w3.org/2002/06/soap-envelope/
[2] http://www.w3.org/TR/2002/WD-soap12-part1-20020626/#faultcodes
[3] http://www.w3.org/2000/xp/Group/xmlp-issues.html#x196
[4] http://lists.w3.org/Archives/Public/xml-dist-app/2002Apr/0026.html
[5] http://www.w3.org/2000/xp/Group/xmlp-issues.html#x191

Received on Friday, 19 July 2002 19:25:59 UTC