cXML Validator
Validate a cXML document against the official 1.2.069 DTD, without sending a single byte beyond the browser.
Paste a cXML document to validate it against DTD 1.2.069.
Embedded schema: 887 elements,
991 declared attributes
(366 required), extracted from the 6 official
cXML 1.2.069
DTDs archived under content/_sources/cxml/1.2.061/.
How it works
The validator runs two passes:
- XML well-formedness: your document is fed to the
browser's native
DOMParser. Mismatched tags, missing-value attributes, or invalid XML characters surface first asE_XML_NOT_WELL_FORMED. - cXML 1.2.069 DTD conformance: a depth-first walk of
the XML tree compares every element against the JSON schema compiled
at build time from the 6 official DTDs. Each diagnostic carries the
XPath of the offending node:
E_NOT_CXML_ROOT— the document root is not<cXML>.E_UNKNOWN_ELEMENT— the element is not defined in any of the 6 DTDs.E_DISALLOWED_CHILD— the element is known but not in the parent's content model.E_MISSING_REQUIRED_ATTR— a DTD#REQUIREDattribute is missing.
Covered transactions
The 6 DTD modules we embed cover the full cXML 1.2.069 surface:
cXML.dtd— envelope, Header, From/To/Sender, Credential, Profile, PunchOut, OrderRequest, Status & Auth.Fulfill.dtd— ConfirmationRequest, ShipNoticeRequest, ServiceEntryRequest, ReceiptRequest, OrderStatusRequest.InvoiceDetail.dtd— InvoiceDetailRequest and every sub-structure (lines, taxes, modifications).Catalog.dtd— CatalogUploadRequest, indexed catalog structure.PaymentRemittance.dtd— PaymentRemittanceRequest and its companions (Proposal, Batch, Receipt).Quote.dtd— QuoteRequest and QuoteMessage.
Privacy
Limitations
The validator targets the most common integration errors. A few DTD checks aren't (yet) implemented:
-
Exact order and cardinality (
?,+,*) of children is not enforced — only the set of allowed children is consulted. - Attribute enumerations (e.g.
operation = "create | inspect | edit | source") are not (yet) validated. -
ID/IDREFreferences are not resolved. -
The
Extrinsicelement has anANYcontent model — its descendants are not inspected.
Related documentation
- cXML — the standard's overview, its versions, and the SAP Ariba ecosystem.
- EDIFACT Validator — its sibling for EDIFACT ISO 9735 messages.