Package org.apache.tools.ant.taskdefs.optional

# Class SchemaValidate

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.optional.XMLValidateTask
org.apache.tools.ant.taskdefs.optional.SchemaValidate

All Implemented Interfaces:
  `Cloneable`

public class SchemaValidate extends XMLValidateTask
Validate XML Schema documents. This task validates XML schema documents. It requires an XML parser that handles the relevant SAX, Xerces or JAXP options. To resolve remote references, Ant may need its proxy set up, using the setproxy task. Hands off most of the work to its parent, `XMLValidateTask`

Since:
  Ant1.7

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`SchemaValidate.SchemaLocation`
representation of a schema location.

### Nested classes/interfaces inherited from class org.apache.tools.ant.taskdefs.optional.XMLValidateTask

`XMLValidateTask.Attribute, XMLValidateTask.Property, XMLValidateTask.ValidatorErrorHandler`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`ERROR_DUPLICATE_SCHEMA`
Duplicate declaration of schema
`static final String`
`ERROR_NO_XSD_SUPPORT`
schema features not supported
`static final String`
`ERROR_PARSER_CREATION_FAILURE`
unable to create parser
`static final String`
`ERROR_SAX_1`
SAX1 not supported
`static final String`
`ERROR_TOO_MANY_DEFAULT_SCHEMAS`
too many default schemas
`static final String`
`MESSAGE_ADDING_SCHEMA`
adding schema

### Fields inherited from class org.apache.tools.ant.taskdefs.optional.XMLValidateTask

`classpath, errorHandler, failOnError, file, filesets, INIT_FAILED_MSG, lenient, MESSAGE_FILES_VALIDATED, readerClassName, warn, xmlReader`

### Fields inherited from class org.apache.tools.ant.Task

`target, taskName, taskType, wrapper`

### Fields inherited from class org.apache.tools.ant.ProjectComponent

`description, location, project`

## Constructor Summary

Constructors
Constructor
Description
`SchemaValidate()`

## Method Summary

Modifier and Type
Method
Description
`void`
`addConfiguredSchema(SchemaValidate.SchemaLocation location)`
add the schema
`protected void`
`addSchemaLocations()`
build a string list of all schema locations, then set the relevant property.
`protected void`
`createAnonymousSchema()`
create a schema location to hold the anonymous schema
`protected XMLReader`
`createDefaultReader()`
Create a reader if the use of the class did not specify another one.
`boolean`
`enableJAXP12SchemaValidation()`
Set schema attributes in a JAXP 1.2 engine.
`boolean`
`enableXercesSchemaValidation()`
Turn on XSD support in Xerces.
`protected String`
`getNoNamespaceSchemaURL()`
get the URL of the no namespace schema
`void`
`init()`
Called by the project to let the task initialize properly.
`protected void`
`initValidator()`
init the parser : load the parser class, and set features if necessary It is only after this that the reader is valid
`protected void`
`onSuccessfulValidation(int fileProcessed)`
handler called on successful file validation.
`void`
`setDisableDTD(boolean disableDTD)`
flag to disable DTD support.
`protected void`
`setFeatureIfSupported(String feature, boolean value)`
set a feature if it is supported, log at verbose level if not
`void`
`setFullChecking(boolean fullChecking)`
enable full schema checking.
`void`
`setNoNamespaceFile(File defaultSchemaFile)`
identify a file containing the default schema
`void`
`setNoNamespaceURL(String defaultSchemaURL)`
identify the URL of the default schema

### Methods inherited from class org.apache.tools.ant.taskdefs.optional.XMLValidateTask

`addConfiguredXMLCatalog, addFileset, cleanup, createAttribute, createClasspath, createDTD, createProperty, createXmlReader, doValidate, execute, getEntityResolver, getXmlReader, isSax1Parser, setClassName, setClasspath, setClasspathRef, setFailOnError, setFeature, setFile, setLenient, setProperty, setWarn`

### Methods inherited from class org.apache.tools.ant.Task

`bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

### Methods inherited from class org.apache.tools.ant.ProjectComponent

`clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### ERROR_SAX_1

public static final String ERROR_SAX_1
SAX1 not supported

See Also:
  - Constant Field Values

### ERROR_NO_XSD_SUPPORT

public static final String ERROR_NO_XSD_SUPPORT
schema features not supported

See Also:
  - Constant Field Values

### ERROR_TOO_MANY_DEFAULT_SCHEMAS

public static final String ERROR_TOO_MANY_DEFAULT_SCHEMAS
too many default schemas

See Also:
  - Constant Field Values

### ERROR_PARSER_CREATION_FAILURE

public static final String ERROR_PARSER_CREATION_FAILURE
unable to create parser

See Also:
  - Constant Field Values

### MESSAGE_ADDING_SCHEMA

public static final String MESSAGE_ADDING_SCHEMA
adding schema

See Also:
  - Constant Field Values

### ERROR_DUPLICATE_SCHEMA

public static final String ERROR_DUPLICATE_SCHEMA
Duplicate declaration of schema

See Also:
  - Constant Field Values

## Constructor Details

### SchemaValidate

public SchemaValidate()

## Method Details

### init

public void init() throws BuildException
Called by the project to let the task initialize properly. The default implementation is a no-op.

Overrides:
  `init` in class `XMLValidateTask`
Throws:
  `BuildException` - if something goes wrong with the build

### enableXercesSchemaValidation

public boolean enableXercesSchemaValidation()
Turn on XSD support in Xerces.

Returns:
  true on success, false on failure

### enableJAXP12SchemaValidation

public boolean enableJAXP12SchemaValidation()
Set schema attributes in a JAXP 1.2 engine.

Returns:
  true on success, false on failure
See Also:
  - JAXP 1.2 Approved CHANGES

### addConfiguredSchema

public void addConfiguredSchema(SchemaValidate.SchemaLocation location)
add the schema

Parameters:
  `location` - the schema location.
Throws:
  `BuildException` - if there is no namespace, or if there already is a declaration of this schema with a different value

### setFullChecking

public void setFullChecking(boolean fullChecking)
enable full schema checking. Slower but better.

Parameters:
  `fullChecking` - a `boolean` value.

### createAnonymousSchema

protected void createAnonymousSchema()
create a schema location to hold the anonymous schema

### setNoNamespaceURL

public void setNoNamespaceURL(String defaultSchemaURL)
identify the URL of the default schema

Parameters:
  `defaultSchemaURL` - the URL of the default schema.

### setNoNamespaceFile

public void setNoNamespaceFile(File defaultSchemaFile)
identify a file containing the default schema

Parameters:
  `defaultSchemaFile` - the location of the default schema.

### setDisableDTD

public void setDisableDTD(boolean disableDTD)
flag to disable DTD support.

Parameters:
  `disableDTD` - a `boolean` value.

### initValidator

protected void initValidator()
init the parser : load the parser class, and set features if necessary It is only after this that the reader is valid

Overrides:
  `initValidator` in class `XMLValidateTask`
Throws:
  `BuildException` - if something went wrong

### createDefaultReader

protected XMLReader createDefaultReader()
Create a reader if the use of the class did not specify another one. The reason to not use `JAXPUtils.getXMLReader()` was to create our own factory with our own options.

Overrides:
  `createDefaultReader` in class `XMLValidateTask`
Returns:
  a default XML parser

### addSchemaLocations

protected void addSchemaLocations()
build a string list of all schema locations, then set the relevant property.

### getNoNamespaceSchemaURL

protected String getNoNamespaceSchemaURL()
get the URL of the no namespace schema

Returns:
  the schema URL

### setFeatureIfSupported

protected void setFeatureIfSupported(String feature, boolean value)
set a feature if it is supported, log at verbose level if not

Parameters:
  `feature` - the feature.
  `value` - a `boolean` value.

### onSuccessfulValidation

protected void onSuccessfulValidation(int fileProcessed)
handler called on successful file validation.

Overrides:
  `onSuccessfulValidation` in class `XMLValidateTask`
Parameters:
  `fileProcessed` - number of files processed.