Class Validator


  • public class Validator
    extends Object
    Validator class based of javax.xml.validation.

    This class provides support for validating schema definitions as well as instance documents. It defaults to the W3C XML Schema 1.0 but can be used to validate against any schema language supported by your SchemaFactory implementation.

    An implementation detail of javax.xml.validation.Validator leaks into this class: any xsi:schemaLocation or xsi:noSchemaLocation attribute of the instance document will be ignored if any schema source has been set. This means you must either specify all sources or none of them to successfully validate instances.

    • Constructor Detail

      • Validator

        public Validator()
        validates using W3C XML Schema 1.0.
      • Validator

        public Validator​(String schemaLanguage)
        validates using the specified schema language.
        Parameters:
        schemaLanguage - the schema language to use - see SchemaFactory.
      • Validator

        public Validator​(SchemaFactory factory)
        validates using the specified schema factory.
        Parameters:
        factory - the concrete factory to use. If this is non-null, the first argument will be ignored.
      • Validator

        protected Validator​(String schemaLanguage,
                            SchemaFactory factory)
        validates using the specified schema language or factory.
        Parameters:
        schemaLanguage - the schema language to use - see SchemaFactory.
        factory - the concrete factory to use. If this is non-null, the first argument will be ignored.
    • Method Detail

      • addSchemaSource

        public void addSchemaSource​(Source s)
        Adds a source for the schema defintion.
        Parameters:
        s - the source to add
      • isSchemaValid

        public boolean isSchemaValid()
        Is the given schema definition valid?
        Returns:
        whether the given schema definition is valid
      • getSchemaErrors

        public List<SAXParseException> getSchemaErrors()
        Obtain a list of all errors in the schema defintion.

        The list contains SAXParseExceptions.

        Returns:
        a list of all errors in the schema definition
      • isInstanceValid

        public boolean isInstanceValid​(Source instance)
        Is the given schema instance valid according to the configured schema definition(s)?
        Parameters:
        instance - the instance to check
        Returns:
        whether the instance is valid
        Throws:
        XMLUnitRuntimeException - if the schema definition is invalid or the Source is a SAXSource and the underlying XMLReader throws an IOException (see validate in Validator).
      • getInstanceErrors

        public List<SAXParseException> getInstanceErrors​(Source instance)
        Obtain a list of all errors in the given instance.

        The list contains SAXParseExceptions.

        Parameters:
        instance - the instance to check
        Returns:
        a list of all errors in the given instance
        Throws:
        XMLUnitRuntimeException - if the schema definition is invalid or the Source is a SAXSource and the underlying XMLReader throws an IOException (see validate in Validator).