XML Schema (XSD) Validator
Validate XML against an XSD 1.0 schema in your browser
XSD schema
0 B · 0 lines
Additional schema files
For relative xs:include or xs:import locations. Up to 10 files, 5 MB for all schemas.
XML document
0 B · 0 lines
Results
Add an XSD schema and an XML document to validate.
Engine: libxml2 (XSD 1.0) compiled to WebAssembly. XSD 1.1 features such as assertions are not supported.
What the XSD validator checks
XML Schema (XSD) Validator checks whether an XML document conforms to an XSD 1.0 schema, which is a different question from whether the XML is well-formed. It reports results in four phases: parsing the schema, compiling it, parsing the document and validating the document against the schema, so you can see exactly where a problem starts.
How validation runs
Validation uses libxml2, the library behind xmllint, compiled to WebAssembly and run in a Web Worker in your browser. The engine (about 0.8 MB) downloads from this site on first use. Your XML and XSD are never uploaded. Each validation stops after 10 seconds (30 seconds on the first run, which includes the download), and the engine has no network or file access.
Security limits
DOCTYPE declarations with external identifiers and all ENTITY declarations are refused before validation, which blocks XXE and entity expansion attacks. xs:import, xs:include and xs:redefine with http, https, file or absolute paths are disabled; add referenced schemas as local files instead. XInclude is not processed. Documents and schemas are limited to 2 MB each, all schemas together to 5 MB, and the list shows the first 100 diagnostics.
Version support
The validator targets XSD 1.0. XSD 1.1 features such as xs:assert, xs:alternative and open content are not supported and are reported as schema compile errors.
