Skip to main content

Search 400 pages — tools, formats, elements, namespaces, directory, comparisons, XPath, datatypes, glossary, parse errors, schema errors, use cases, guides, blog and product.

SOAP envelope

<env:Fault>

SOAP 1.2's structured error payload, with a machine-readable Code and human-readable Reason.

Fault is not an arbitrary error object. SOAP 1.2 requires Code and Reason, followed by optional Node, Role, and Detail children in order.

Detail carries application-specific failure data; protocol-level information stays in the standard children so generic SOAP software can interpret it.

What it contains

Cardinality and constraints

Zero or one, as the Body's error payload.

  • Code and Reason are required.
  • Standard child elements follow their defined order.

What our validator does

The XML validator checks that both examples are well-formed. It does not enforce this vocabulary's semantic content model, so the broken example is intentionally reported as valid XML.

We do not catch this one

This document is well-formed XML but violates a SOAP or XML Schema vocabulary rule. XML syntax alone cannot detect that defect; use a SOAP-aware processor or an XSD validator when conformance matters.

Broken and fixed

Both documents below are well-formed XML — that is the point of this corpus — and both are run through the validator on every test run. The verdicts here are what it returned, not what we expect it to.

broken
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
  <env:Body><m:getPrice xmlns:m="urn:example:catalog"><m:sku>42</m:sku></m:getPrice></env:Body>
  <env:Header><m:trace xmlns:m="urn:example:meta">abc-123</m:trace></env:Header>
</env:Envelope>
No issue reported. This defect passes our checks.
fixed
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
  <env:Body>
    <env:Fault>
      <env:Code><env:Value>env:Sender</env:Value></env:Code>
      <env:Reason><env:Text xml:lang="en">Unknown product</env:Text></env:Reason>
      <env:Detail><m:sku xmlns:m="urn:example:catalog">42</m:sku></env:Detail>
    </env:Fault>
  </env:Body>
</env:Envelope>
No errors. Warnings may remain — a conforming feed can still be missing a self link — but nothing here is wrong.

Get started

Bring order to the XML your team can't afford to ignore.

Create a free account and get a private workspace to search, validate, diff, and monitor your XML feeds, sitemaps, schemas, and vendor integrations.