<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            targetNamespace="http://schemas.xmlsoap.org/soap/envelope/"
            xmlns="http://schemas.xmlsoap.org/soap/envelope/"
            elementFormDefault="unqualified">
    <xsd:element name="Envelope">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element ref="Header" minOccurs="0"/>
                <xsd:element ref="Body"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="Header">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
    <xsd:attribute name="mustUnderstand" type="xsd:boolean" default="false"/>
    <xsd:element name="Body">
        <xsd:complexType>
            <xsd:choice>
                <xsd:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
                <xsd:element ref="Fault"/>
            </xsd:choice>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="Fault">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element name="faultcode" type="xsd:QName"/>
                <xsd:element name="faultstring" type="xsd:string"/>
            <xsd:element name="faultactor" type="xsd:anyURI"/>
                <xsd:element name="detail" minOccurs="0">
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
</xsd:schema>

