Free Trial - Stylus Studio, The World's Best XML IDE!


com.saxonica.validate
Class ConstraintChecker

java.lang.Object
  |
  +--net.sf.saxon.event.ProxyReceiver
        |
        +--com.saxonica.validate.ConstraintChecker
All Implemented Interfaces:
Receiver, javax.xml.transform.Result

public class ConstraintChecker
extends ProxyReceiver

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.


Field Summary
 
Fields inherited from class net.sf.saxon.event.ProxyReceiver
baseReceiver, config, systemId
 
Fields inherited from interface javax.xml.transform.Result
PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING
 
Constructor Summary
ConstraintChecker()
           
 
Method Summary
 void addWatch(Watch watch)
          Add a new Watch
 void attribute(int nameCode, int typeCode, java.lang.CharSequence value, int properties)
          Handle an attribute
 void characters(java.lang.CharSequence chars, int properties)
          Character data
 void endElement()
          End of element
 void setElementDeclaration(ElementDecl decl)
          setElementDeclaration is called immediately after the call on startElement.
 void startElement(int nameCode, int typeCode, int properties)
          Output element start tag
 
Methods inherited from class net.sf.saxon.event.ProxyReceiver
comment, endDocument, getConfiguration, getNamePool, getSystemId, getUnderlyingReceiver, namespace, processingInstruction, setConfiguration, setDocumentLocator, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startContent, startDocument
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConstraintChecker

public ConstraintChecker()
Method Detail

startElement

public void startElement(int nameCode,
                         int typeCode,
                         int properties)
                  throws javax.xml.transform.TransformerException
Output element start tag

Specified by:
startElement in interface Receiver
Overrides:
startElement in class ProxyReceiver
Parameters:
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.
javax.xml.transform.TransformerException

setElementDeclaration

public void setElementDeclaration(ElementDecl decl)
setElementDeclaration is called immediately after 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.


attribute

public void attribute(int nameCode,
                      int typeCode,
                      java.lang.CharSequence value,
                      int properties)
               throws javax.xml.transform.TransformerException
Handle an attribute

Specified by:
attribute in interface Receiver
Overrides:
attribute in class ProxyReceiver
Parameters:
nameCode - integer identifying the name of the attribute
typeCode - integer identifying the type annotation (ignored)
value - the value of the attribute
properties - additional properties of the attribute
Throws:
javax.xml.transform.TransformerException - On any failure to write the attribute

characters

public void characters(java.lang.CharSequence chars,
                       int properties)
                throws javax.xml.transform.TransformerException
Description copied from class: ProxyReceiver
Character data

Specified by:
characters in interface Receiver
Overrides:
characters in class ProxyReceiver
Parameters:
chars - The characters
properties - Bit significant value. The following bits are defined:
DISABLE_ESCAPING
Disable escaping for this text node
USE_CDATA
Output as a CDATA section
NO_SPECIAL_CHARACTERS
Value contains no special characters
WHITESPACE
Text is all whitespace
javax.xml.transform.TransformerException

endElement

public void endElement()
                throws javax.xml.transform.TransformerException
End of element

Specified by:
endElement in interface Receiver
Overrides:
endElement in class ProxyReceiver
javax.xml.transform.TransformerException

addWatch

public void addWatch(Watch watch)
Add a new Watch



Stylus Studio features integrated development and debugging support for Saxon in the XQuery editor and XSLT editor.