Package net.sf.saxon.lib

## Class InvalidityReportGenerator

- java.lang.Object
- - net.sf.saxon.lib.StandardDiagnostics
  - - net.sf.saxon.lib.StandardInvalidityHandler
    - - net.sf.saxon.lib.InvalidityReportGenerator

- All Implemented Interfaces:
    `InvalidityHandler`
  Direct Known Subclasses:
    `InvalidityReportGeneratorEE`

      public class InvalidityReportGenerator
      extends StandardInvalidityHandler

  This class `InvalidityReportGenerator` extends the standard error handler for errors found during validation of an instance document against a schema, used if user specifies -report option on validate. Its effect is to output the validation errors found into the filename specified in an XML format.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.String` | `REPORT_NS` |

    - ### Fields inherited from class net.sf.saxon.lib.StandardDiagnostics

      `MAX_MESSAGE_LENGTH, MAX_MESSAGE_LINE_LENGTH, MIN_MESSAGE_LINE_LENGTH, TARGET_MESSAGE_LINE_LENGTH`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `InvalidityReportGenerator​(Configuration config)` |
    `InvalidityReportGenerator​(Configuration config, Outputter receiver)` | Create a Report Invalidity Handler writing to a Receiver

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `createMetaData()` | Create metedata element which contains summary information in the output XML document
    `Sequence` | `endReporting()` | Get the value to be associated with a validation exception.
    `int` | `getErrorCount()` |
    `int` | `getWarningCount()` |
    `javax.xml.stream.XMLStreamWriter` | `getWriter()` |
    `void` | `reportInvalidity​(Invalidity failure)` | Receive notification of a validity error.
    `void` | `setReceiver​(Outputter receiver)` | Set the receiver
    `void` | `setSchemaName​(java.lang.String name)` | Set the XSD document used to validation process
    `void` | `setSystemId​(java.lang.String id)` | Set the XML document that is to be validated
    `void` | `setXsdVersion​(java.lang.String version)` |
    `void` | `startReporting​(java.lang.String systemId)` | At the start of a validation episode, initialize the handler

    - ### Methods inherited from class net.sf.saxon.lib.StandardInvalidityHandler

      `getConfiguration, getConstraintReferenceMessage, getExpandedMessage, getLocationMessage, getLogger, setLogger`

    - ### Methods inherited from class net.sf.saxon.lib.StandardDiagnostics

      `abbreviateLocationURI, abbreviateLocationURIDefault, expandSpecialCharacters, formatListOfOffendingNodes, getInstructionName, getInstructionNameDefault, getLocationMessageText, printStackTrace, showOriginator, wordWrap`

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

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

- - ### Field Detail

    - #### REPORT_NS

          public static final java.lang.String REPORT_NS

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### InvalidityReportGenerator

          public InvalidityReportGenerator​(Configuration config)

    - #### InvalidityReportGenerator

          public InvalidityReportGenerator​(Configuration config,
                                           Outputter receiver)
                                    throws XPathException

      Create a Report Invalidity Handler writing to a Receiver
      Parameters:
        `config` - the Saxon configuration
        `receiver` - required to output the validation errors
      Throws:
        `XPathException`

  - ### Method Detail

    - #### setReceiver

          public void setReceiver​(Outputter receiver)

      Set the receiver
      Parameters:
        `receiver` - required to output the validation errors

    - #### setSystemId

          public void setSystemId​(java.lang.String id)

      Set the XML document that is to be validated
      Parameters:
        `id` - of the source document

    - #### setSchemaName

          public void setSchemaName​(java.lang.String name)

      Set the XSD document used to validation process
      Parameters:
        `name` - of xsd file

    - #### getErrorCount

          public int getErrorCount()

    - #### getWarningCount

          public int getWarningCount()

    - #### setXsdVersion

          public void setXsdVersion​(java.lang.String version)

    - #### getWriter

          public javax.xml.stream.XMLStreamWriter getWriter()

    - #### reportInvalidity

          public void reportInvalidity​(Invalidity failure)
                                throws XPathException

      Receive notification of a validity error.
      Specified by:
        `reportInvalidity` in interface `InvalidityHandler`
      Overrides:
        `reportInvalidity` in class `StandardInvalidityHandler`
      Parameters:
        `failure` - Information about the nature of the invalidity
      Throws:
        `XPathException` - - if the validation error cannot be reported. This is fatal and will cause the validation run to be abandoned

    - #### startReporting

          public void startReporting​(java.lang.String systemId)
                              throws XPathException

      At the start of a validation episode, initialize the handler
      Specified by:
        `startReporting` in interface `InvalidityHandler`
      Overrides:
        `startReporting` in class `StandardInvalidityHandler`
      Parameters:
        `systemId` - optional; may be used to represent the destination of any report produced
      Throws:
        `XPathException` - if initialization of the invalidity handler fails for any reason

    - #### endReporting

          public Sequence endReporting()
                                throws XPathException

      Description copied from class: `StandardInvalidityHandler`
      Get the value to be associated with a validation exception. May return null. In the case of the InvalidityReportGenerator, this returns the XML document containing the validation report
      Specified by:
        `endReporting` in interface `InvalidityHandler`
      Overrides:
        `endReporting` in class `StandardInvalidityHandler`
      Returns:
        a value (or null). This will be the value returned as the value of the variable $err:value during try/catch processing
      Throws:
        `XPathException` - if an error occurs creating any validation report

    - #### createMetaData

          public void createMetaData()
                              throws XPathException

      Create metedata element which contains summary information in the output XML document
      Throws:
        `XPathException`