XDV - General information

XML Document Validator is an implementation of CLiXML - Constraint Language in XML - that has been designed to express complex constraints about XML content using a mixture of first order logic and XPath.

CLiXML is complementary to XML-Schema or RelaxNG. Document structure, data types and references should be expressed in schema, while more complex contraints regarding XML document content should be reserved for CLiXML.
CLiXML plays the same role in XML validation as Schematron. While Schematron relies only on functionality offered by XPath, CLiXML has additional adventage of first order logic which makes rules simpler to express and understand.

NOTE: The XDV code and this site was last updated in 2009, the project is not maintained anymore.

Key features

  • Free!
    Open source, distributed on Apache License 2.0, compatible with Java 1.5.
  • Flexible XPath module.
    Implementation is not bound to any XPath engine. XPath functionality has been extracted into a separate, independent, reusable, well defined API. Project includes connectors to Jaxen and Saxon 6.5.5.
  • Many errors in one run.
    Validation does not stop at first constraint violation but reports as many errors in one run as possible.
  • Dynamic error messages.
    An error message can include information extracted from XML node being tested by the rule.


More information


XDV has been originally created in year 2006 as a validation module for project FESA developed at CERN. FESA extensively uses XML as a modeling language and quickly reached the limits of XML-Schema validation abilities.