Interface XmlProcessingError

All Known Implementing Classes:
XmlProcessingException, XmlProcessingIncident

public interface XmlProcessingError
The XmlProcessingError class contains information about an error detected during compilation or execution of a stylesheet, query, XPath expression, or schema
Since:
10.0. In 11.0, the super-interface StaticError is dropped, as it had become misleading.
  • Method Summary

    Modifier and Type
    Method
    Description
    Return an XmlProcessingError containing the same information, but to be treated as a warning condition
    Return an underlying exception.
    Get the error code, as a QName.
    Get the Expression that failed, if known
     
    Get the location information associated with the error
    Get the error message associated with this error
    default String
    Get The URI of the query or stylesheet module in which the error was detected (as a string) May be null if the location of the error is unknown, or if the error is not localized to a specific module, or if the module in question has no known URI (for example, if it was supplied as an anonymous Stream)
    Get the absolute XPath expression that identifies the node within its document where the error occurred, if available
    Ask whether this error is to be treated as fatal, and return the associated message
    boolean
    Ask whether this static error has already been reported
    boolean
    Ask whether this is a static error, defined as an error that can be detected during static analysis of a stylesheet, query, schema, or XPath expression.
    boolean
    Ask whether this is a type error.
    boolean
    Ask whether this error is being reported as a warning condition.
    void
    setAlreadyReported(boolean reported)
    Say whether this error has already been reported
    void
    Indicate that this error is to be treated as fatal; that is, execution will be abandoned after reporting this error.
  • Method Details

    • getHostLanguage

      HostLanguage getHostLanguage()
    • isStaticError

      boolean isStaticError()
      Ask whether this is a static error, defined as an error that can be detected during static analysis of a stylesheet, query, schema, or XPath expression.
      Returns:
      true if this is a static error
    • isTypeError

      boolean isTypeError()
      Ask whether this is a type error. Saxon reports type errors statically if it can establish that a supplied value will never satisfy the required type
      Returns:
      true if this is a type error
    • getErrorCode

      QName getErrorCode()
      Get the error code, as a QName. This may be null if no error code has been assigned
      Returns:
      QName
    • getMessage

      String getMessage()
      Get the error message associated with this error
      Returns:
      String the error message
    • getLocation

      Location getLocation()
      Get the location information associated with the error
      Returns:
      the location of the error. The result is never null, though it may be a location with little useful information.
    • getModuleUri

      default String getModuleUri()
      Get The URI of the query or stylesheet module in which the error was detected (as a string) May be null if the location of the error is unknown, or if the error is not localized to a specific module, or if the module in question has no known URI (for example, if it was supplied as an anonymous Stream)
      Returns:
      the URI identifying the location of the stylesheet module or query module
    • getFailingExpression

      Expression getFailingExpression()
      Get the Expression that failed, if known
      Returns:
      the failing expression, or null
    • isWarning

      boolean isWarning()
      Ask whether this error is being reported as a warning condition. If so, applications may ignore the condition, though the results may not be as intended.
      Returns:
      true if a condition is detected that is not an error according to the language specification, but which may indicate that the query or stylesheet might behave in unexpected ways
    • getPath

      String getPath()
      Get the absolute XPath expression that identifies the node within its document where the error occurred, if available
      Returns:
      a path expression identifying the location of the error within an XML document, or null if the information is not available
    • getCause

      Throwable getCause()
      Return an underlying exception. For example, if the static error was caused by failure to retrieve another stylesheet or query module, this may contain the IO exception that was reported; or if the XML parser was unable to parse a stylesheet module, it may contain a SAXException reported by the parser.
      Returns:
      the underlying exception if there was one, or null otherwise
    • asWarning

      XmlProcessingError asWarning()
      Return an XmlProcessingError containing the same information, but to be treated as a warning condition
      Returns:
      an XmlProcessingError to be treated as a warning
    • setTerminationMessage

      void setTerminationMessage(String message)
      Indicate that this error is to be treated as fatal; that is, execution will be abandoned after reporting this error. This method may be called by an ErrorReporter, for example if the error is considered so severe that further processing is not worthwhile, or if too many errors have been signalled. There is no absolute guarantee that setting this property will cause execution to be abandoned. If a dynamic error is marked as fatal, it will generally not be caught by any try/catch mechanism within the stylesheet or query.
      Parameters:
      message - an error message giving the reason for the fatal error
    • getTerminationMessage

      String getTerminationMessage()
      Ask whether this error is to be treated as fatal, and return the associated message
      Returns:
      a non-null message if the error has been marked as a fatal error.
    • isAlreadyReported

      boolean isAlreadyReported()
      Ask whether this static error has already been reported
      Returns:
      true if the error has already been reported
    • setAlreadyReported

      void setAlreadyReported(boolean reported)
      Say whether this error has already been reported
      Parameters:
      reported - true if the error has been reported