|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sf.saxon.event.SequenceReceiver
net.sf.saxon.event.ProxyReceiver
com.saxonica.validate.ContentValidator
This class is an abstract superclass for all the validators. The class includes factory methods for constructing a validator.
Renamed from Validator to ContentValidator in Saxon 8.2, to avoid confusion with the JAXP 1.3 Validator class.
Field Summary | |
protected boolean |
invalid
|
protected java.util.List |
pendingMessages
|
protected SchemaType |
xsiType
|
Fields inherited from class net.sf.saxon.event.ProxyReceiver |
nextReceiver, systemId |
Fields inherited from class net.sf.saxon.event.SequenceReceiver |
pipelineConfiguration, previousAtomic |
Fields inherited from interface javax.xml.transform.Result |
PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING |
Constructor Summary | |
ContentValidator()
|
Method Summary | |
void |
endDocument()
Notify the end of a document node |
protected int |
getAnnotation()
Get the type annotation code to be used on elements validated by this validator |
protected abstract ContentValidator |
getChildValidator()
Get a validator to handle the children of the current element. |
int |
getContainingElement()
Get the fingerprint of the name of the element being validated (for diagnostics). |
int |
getContainingElementLocationId()
Get the location ID of the element being validated |
protected java.lang.String |
getContainingElementName()
Get the containing element name, for use in error messages. |
ElementDecl |
getElementDeclaration()
Get the element declaration that this validator is validating against |
NamespaceResolver |
getNamespaceResolver()
Get the namespace resolver |
boolean |
isInvalid()
Determine if an error was found |
boolean |
isNillable()
Determine whether this type permits xsi:nil = true |
boolean |
isOutput()
Determine whether this validator is being used for an output document |
protected static ContentValidator |
makeValidator(Configuration config,
SchemaType type,
SchemaType xsiType,
ElementDecl decl)
|
static ContentValidator |
makeValidator(ElementDecl elementDecl,
SchemaType schemaType,
PipelineConfiguration pipe)
Factory method to create a validator for elements of a given type |
static ContentValidator |
makeValidator(int nameCode,
int locationId,
SchemaType xsiType,
int validation,
PipelineConfiguration pipe)
Factory method to make a validator for a particular element |
protected void |
reportValidationError(java.lang.String message,
boolean issueComment,
int locationId)
Report a validation error |
protected void |
setAnnotation(int annotation)
Set the type annotation code to be allocated by this validator |
void |
setContainingElement(int fingerprint,
int locationId)
Set the fingerprint identifying the name of the containing element (for diagnostics) |
void |
setElementDeclaration(ElementDecl decl)
Set the element declaration that this validator is validating against |
void |
setIsOutput(boolean output)
Indicate that this validator is being used for an output document. |
void |
setNamespaceResolver(NamespaceResolver resolver)
Set the NamespaceResolver to be used for resolving QName-valued attributes |
void |
setNillable(boolean nillable)
Set whether this type permits xsi:nil = true |
void |
setXSIType(SchemaType xsiType)
Set the value of the xsi:type attribute. |
void |
startElement(int nameCode,
int typeCode,
int locationId,
int properties)
Handle the start tag for a child element of the element being validated |
Methods inherited from class net.sf.saxon.event.ProxyReceiver |
attribute, characters, close, comment, endElement, getConfiguration, getDocumentLocator, getNamePool, getSystemId, getUnderlyingReceiver, namespace, open, processingInstruction, setPipelineConfiguration, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startContent, startDocument |
Methods inherited from class net.sf.saxon.event.SequenceReceiver |
append, getPipelineConfiguration |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected SchemaType xsiType
protected boolean invalid
protected java.util.List pendingMessages
Constructor Detail |
public ContentValidator()
Method Detail |
public void setContainingElement(int fingerprint, int locationId)
fingerprint
- public void setElementDeclaration(ElementDecl decl)
public ElementDecl getElementDeclaration()
public int getContainingElement()
public int getContainingElementLocationId()
protected java.lang.String getContainingElementName()
protected final void setAnnotation(int annotation)
protected final int getAnnotation()
public void setXSIType(SchemaType xsiType)
public void setNamespaceResolver(NamespaceResolver resolver)
public NamespaceResolver getNamespaceResolver()
public void setNillable(boolean nillable)
public boolean isNillable()
public void setIsOutput(boolean output)
public boolean isOutput()
public void startElement(int nameCode, int typeCode, int locationId, int properties) throws XPathException
startElement
in interface Receiver
startElement
in class ProxyReceiver
nameCode
- integer code identifying the name of the element within the name pool.typeCode
- integer code identifying the element's type within the name pool.properties
- properties of the element node
XPathException
public static ContentValidator makeValidator(int nameCode, int locationId, SchemaType xsiType, int validation, PipelineConfiguration pipe) throws XPathException
nameCode
- the name of the element to be validatedlocationId
- the location of the stylesheet instruction that generated this element (or zero)xsiType
- the type identified by xsi:type, if specified; otherwise nullvalidation
- the validation mode (strict, lax, preserve, strip)pipe
- the pipeline configuration
XPathException
protected static ContentValidator makeValidator(Configuration config, SchemaType type, SchemaType xsiType, ElementDecl decl) throws XPathException
XPathException
protected abstract ContentValidator getChildValidator()
public static ContentValidator makeValidator(ElementDecl elementDecl, SchemaType schemaType, PipelineConfiguration pipe) throws ValidationException
elementDecl
- the element declaration if available, otherwise null
(there will be no element declaration, for example, when doing lax validation
against an xsi:type)schemaType
- the simple or complex type against which the content of the
element is to be validatedpipe
- the pipeline configuration
ValidationException
protected void reportValidationError(java.lang.String message, boolean issueComment, int locationId) throws XPathException
message
- The validation error messageissueComment
- true if the validation error message is to be written as an XML comment to the
result documentlocationId
- identifies the location in the source document or stylesheet/query where the
validation error was detected
XPathException
public boolean isInvalid()
public void endDocument() throws XPathException
endDocument
in interface Receiver
endDocument
in class ProxyReceiver
XPathException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |