net.sf.saxon.type
public class ValidationFailure extends Object implements SourceLocator, Locator, ConversionResult
This class holds the same information as a ValidationException, except that it is not an exception, and does not carry system overheads such as a stack trace. It is used because operations such as "castable", and validation of values in a union, cause validation failures on a success path and it is costly to throw, or even to create, exception objects on a success path.
Constructor Summary | |
---|---|
ValidationFailure(String message)
Creates a new ValidationException with the given message. | |
ValidationFailure(Exception exception)
Creates a new ValidationFailure with the given nested
exception. |
Method Summary | |
---|---|
AtomicValue | asAtomic()
Calling this method on a ConversionResult returns the AtomicValue that results
from the conversion if the conversion was successful, and throws a ValidationException
explaining the conversion error otherwise.
|
int | getColumnNumber() |
String | getConstraintClauseNumber()
Get the constraint clause number |
String | getConstraintName()
Get the constraint name |
String | getConstraintReference()
Get the constraint name and clause in the format defined in XML Schema Part C (Outcome Tabulations).
|
String | getConstraintReferenceMessage()
Get the constraint reference as a string for inserting into an error message. |
int | getConstraintSchemaPart()
Get the "schema part" component of the constraint reference |
String | getErrorCode() |
StructuredQName | getErrorCodeQName() |
int | getLineNumber() |
SourceLocator | getLocator() |
String | getMessage() |
String | getPublicId() |
String | getSystemId() |
ValidationException | makeException() |
ValidationException | makeException(String contextMessage) |
void | setColumnNumber(int column) |
void | setConstraintReference(int schemaPart, String constraintName, String clause)
Set a reference to the constraint in XML Schema that is not satisfied |
void | setConstraintReference(ValidationFailure e)
Copy the constraint reference from another exception object |
void | setErrorCode(String errorCode) |
void | setErrorCodeQName(StructuredQName errorCode) |
void | setLineNumber(int line) |
void | setLocator(SourceLocator locator) |
void | setPublicId(String id) |
void | setSourceLocator(SourceLocator locator) |
void | setSystemId(String id) |
String | toString()
Returns the String representation of this Exception |
Parameters: message the message for this Exception
Parameters: exception the nested exception
Use this method if you are calling a conversion method that returns a ConversionResult, and if you want to throw an exception if the conversion fails.
Returns: the atomic value that results from the conversion if the conversion was successful
Throws: net.sf.saxon.type.ValidationException if the conversion was not successful
Returns: the section number of the clause containing the constraint that has been violated. Generally a decimal number in the form n.n.n; possibly a sequence of such numbers separated by semicolons. Or null if the information is not available.
Returns: the name of the violated constraint, in the form of a fragment identifier within the published XML Schema specification; or null if the information is not available.
Returns: the constraint reference, for example "cos-ct-extends.1.2"; or null if the reference is not known.
Returns: the reference as a message, or null if no information is available
Returns: 1 or 2 depending on whether the violated constraint is in XML Schema Part 1 or Part 2; or -1 if there is no constraint reference
Parameters: schemaPart - 1 or 2, depending whether the constraint is in XMLSchema part 1 or part 2 constraintName - the short name of the constraint in XMLSchema, as a fragment identifier in the HTML of the XML Schema Part 1 specification clause - the clause number within the description of that constraint
Parameters: e the other exception object from which to copy the information
Returns: the String representation of this Exception