- Protect facets validators from type and value errors
- Add strictly_equal() helper to check fixed value equality
- Move get_instance_type() from XsdType to global maps
- The base XsdList and XsdUnion types have no validators or patterns,
that are added only to restrictions.
- Added patterns optional argument to XsdUnion.iter_decode(): derived
types pass our patterns to the xs:union base type, that checks them
after normalization with the selected member type.
- Add iter_substitutes() to Xsd11Element to fix upa.xsd/upa2.xsd
tests with instances. Now for XsdElement the abstract substitutes
are simply ignored by iter_substitutes().
- ID are not counted for XML document root
- IDREF checked with adding a key with 0 value if missing
(TODO: Add a validation error instance or a reference)
- Additional options (--xsd10, --xsd11, --valid, --invalid, a
list of indexes) to run only a subset of the W3C tests.
- Run also XML tests with --xml option.
- Add filter for import warnings that are out of the scope of
tests with W3C XSD 1.1 suite
- Added XMLSchemaNamespaceError for namespace related errors
- version_check moved to schema class
- resolve_qname() now raises KeyError if namespace prefix is not found
- resolve_qname() now raises XMLSchemaNamespaceError if a namespace
is mapped with a prefix but is not loaded by an import
- Checked and improved 'built' properties for XSD components:
* Simple types, attributes and attribute group are now built
withoug cheching on base types.
* Don't check global subcomponents: the scope of built is to
assure that local parts are built.
- Split global maps checks from build phase:
* XsdGlobals._check_schema substituted by check() method with
two opional arguments. The new methos is useful also to check
global maps also after schema building.
- Added validator=None argument to parse_error() method
- Removed raise validation error statements for simpleType classes:
with validation='strict' the errors are yielded and then raised at
higher level (element/attribute) with XML instance information.
- Added XMLResource.iterfind() for XPath iteration of a resource;
- Validator API refactored: remove path argument from iter_errors()
of components, add validate, is_valid, iter_errors to XMLSchema
class with additional arguments path and schema_path.
- Fix test case patterns.xml (now find also duplicated IDs)
- Default and fixed values are inserted during the decode or
encode process
- Update tox.ini to include coverage and flake8 to environments
and an optional environment to build source and wheel packages
- Added facets to numerical XSD builtins but keep validator functions
- More checks on min/max value facets
- Removed HFP namespace from base schemas (used only for meta-schema wildcars)
- Added check on type matching of same elements
- Added XsdGroup.check_particles() for check Unique Particle Attribution
Constraint of schema
- Fixed group redefine (clear in any case when _parse begins)