Validates an XML file against XSDs, supports XSD version 1.1. Requires Java Runtime (version 8 or better).
Assert that my.xml
is valid according to schema schema.xsd
:
from xsd_validator import XsdValidator
validator = XsdValidator('schema.xsd')
validator.assert_valid('my.xml')
A more complex schema may be split between several files, for example: schema.xsd
, schema-aux.xsd
and xml.xsd
.
Just pass them all to the XsdValidator
:
from xsd_validator import XsdValidator
validator = XsdValidator('schema.xsd', 'schema-aux.xsd', 'xml.xsd')
validator.assert_valid('my.xml')
Sometimes you need to get all problems discovered. You can loop through the errors like this:
from xsd_validator import XsdValidator
validator = XsdValidator('schema.xsd', 'schema-aux.xsd', 'xml.xsd')
for err in validator('my.xml'):
print(err)
You can use xsd_validator
module as an executable, like this:
python -m xsd_validator
For example:
python -m xsd_validator schema.xsd my.xml
Help:
python -m xsd_validator -husage: xsd_validator [-h] xsd [xsd ...] xml
Validate an XML file againsd XSD schema (supports XSD version 1.1)
positional arguments:
xsd XSD files
xml XML file to check
optional arguments:
-h, --help show this help message and exit