Package com.saxonica.ee.validate
Class ConstraintChecker
- java.lang.Object
-
- net.sf.saxon.event.SequenceReceiver
-
- com.saxonica.ee.stream.watch.WatchManager
-
- com.saxonica.ee.validate.ConstraintChecker
-
- All Implemented Interfaces:
javax.xml.transform.Result,Receiver,NamespaceResolver
public class ConstraintChecker extends WatchManager
This class handles the checking of Schema-defined unique, key, and keyref constraints. It keeps track of the nesting of elements, and notifies a Watcher class when an element is found that matches a particular Selector.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.saxonica.ee.stream.watch.WatchManager
WatchManager.GroupingScope
-
-
Field Summary
-
Fields inherited from class com.saxonica.ee.stream.watch.WatchManager
activeWatchStack, elementStackTop, watchList
-
Fields inherited from class net.sf.saxon.event.SequenceReceiver
pipelineConfiguration, previousAtomic, systemId
-
-
Constructor Summary
Constructors Constructor Description ConstraintChecker(PipelineConfiguration pipe)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddPrearrangedWatches()ValidationContextgetValidationContext()voidsetElementDeclaration(ElementDecl decl)setElementDeclaration is called immediately before the call on startElement.voidsetPipelineConfiguration(PipelineConfiguration pipe)Set the pipeline configurationvoidsetValidationContext(ValidationContext vc)-
Methods inherited from class com.saxonica.ee.stream.watch.WatchManager
addWatch, append, characters, close, comment, endDocument, endElement, endGroupingScope, getCurrentNode, getDepth, getDocumentNode, getMultiAccumulatorWatch, getOutputter, getURIForPrefix, getXPathContext, iteratePrefixes, processingInstruction, removeWatch, restartElement, setOutputter, setUnparsedEntity, setXPathContext, startCapturingGroupingWatches, startDocument, startElement, startGroupingScope, stopCapturingGroupingWatches, usesTypeAnnotations, watchAccumulators
-
Methods inherited from class net.sf.saxon.event.SequenceReceiver
append, decompose, flatten, getConfiguration, getErrorCodeForDecomposingFunctionItems, getNamePool, getPipelineConfiguration, getSystemId, handlesAppend, open, setSystemId
-
-
-
-
Constructor Detail
-
ConstraintChecker
public ConstraintChecker(PipelineConfiguration pipe)
-
-
Method Detail
-
setValidationContext
public void setValidationContext(ValidationContext vc)
-
getValidationContext
public ValidationContext getValidationContext()
-
setPipelineConfiguration
public void setPipelineConfiguration(PipelineConfiguration pipe)
Description copied from interface:ReceiverSet the pipeline configuration- Specified by:
setPipelineConfigurationin interfaceReceiver- Overrides:
setPipelineConfigurationin classSequenceReceiver- Parameters:
pipe- the pipeline configuration
-
setElementDeclaration
public void setElementDeclaration(ElementDecl decl) throws XPathException
setElementDeclaration is called immediately before the call on startElement. It identifies the element declaration that defines the just-started element, which in turn is used to create a Watch for constraints originating at this element.- Parameters:
decl- the element declaration- Throws:
XPathException- if an error occurs
-
addPrearrangedWatches
protected void addPrearrangedWatches() throws XPathException- Overrides:
addPrearrangedWatchesin classWatchManager- Throws:
XPathException
-
-