|
|||||||||
| 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
net.sf.saxon.event.TypeCheckingFilter
public class TypeCheckingFilter
A filter on the push pipeline that performs type checking, both of the item type and the cardinality.
Note that the TypeCheckingFilter cannot currently check document node tests of the form document-node(element(X,Y)), so it is not invoked in such cases. This isn't a big problem, because most instructions that return document nodes materialize them anyway.
| Field Summary |
|---|
| Fields inherited from class net.sf.saxon.event.ProxyReceiver |
|---|
nextReceiver |
| Fields inherited from class net.sf.saxon.event.SequenceReceiver |
|---|
pipelineConfiguration, previousAtomic, systemId |
| Fields inherited from interface javax.xml.transform.Result |
|---|
PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING |
| Constructor Summary | |
|---|---|
TypeCheckingFilter(Receiver next)
|
|
| Method Summary | |
|---|---|
void |
append(Item item,
int locationId,
int copyNamespaces)
Output an item (atomic value or node) to the sequence |
void |
attribute(NodeName nameCode,
SimpleType typeCode,
CharSequence value,
int locationId,
int properties)
Notify an attribute. |
void |
characters(CharSequence chars,
int locationId,
int properties)
Character data |
void |
close()
End of event stream |
void |
comment(CharSequence chars,
int locationId,
int properties)
Output a comment |
void |
endDocument()
Notify the end of a document node |
void |
endElement()
End of element |
void |
namespace(NamespaceBinding namespaceBinding,
int properties)
Notify a namespace. |
void |
processingInstruction(String target,
CharSequence data,
int locationId,
int properties)
Processing Instruction |
void |
setRequiredType(ItemType type,
int cardinality,
RoleLocator role,
SourceLocator locator)
|
void |
startDocument(int properties)
Start of a document node. |
void |
startElement(NodeName nameCode,
SchemaType typeCode,
int locationId,
int properties)
Notify the start of an element |
boolean |
usesTypeAnnotations()
Ask whether this Receiver (or the downstream pipeline) makes any use of the type annotations supplied on element and attribute events |
| Methods inherited from class net.sf.saxon.event.ProxyReceiver |
|---|
getNamePool, getUnderlyingReceiver, open, setPipelineConfiguration, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startContent |
| Methods inherited from class net.sf.saxon.event.SequenceReceiver |
|---|
append, getConfiguration, getPipelineConfiguration, getSystemId |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public TypeCheckingFilter(Receiver next)
| Method Detail |
|---|
public void setRequiredType(ItemType type,
int cardinality,
RoleLocator role,
SourceLocator locator)
public void attribute(NodeName nameCode,
SimpleType typeCode,
CharSequence value,
int locationId,
int properties)
throws XPathException
attribute in interface Receiverattribute in class ProxyReceivernameCode - The name of the attribute, as held in the name pooltypeCode - The type of the attribute, as held in the name poolproperties - Bit significant value. The following bits are defined:
value - the string value of the attributelocationId - an integer which can be interpreted using a LocationProvider to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.
IllegalStateException: - attempt to output an attribute when there is no open element
start tag
XPathException - if an error occurs
public void characters(CharSequence chars,
int locationId,
int properties)
throws XPathException
characters in interface Receivercharacters in class ProxyReceiverchars - The characterslocationId - an integer which can be interpreted using a LocationProvider
to return information such as line number and system ID. If no location information is available,
the value zero is supplied.properties - Bit significant value. The following bits are defined:
XPathException - if an error occurs
public void comment(CharSequence chars,
int locationId,
int properties)
throws XPathException
comment in interface Receivercomment in class ProxyReceiverchars - The content of the commentlocationId - an integer which can be interpreted using a LocationProvider to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.properties - Additional information about the comment.
XPathException - if an error occurs
public void namespace(NamespaceBinding namespaceBinding,
int properties)
throws XPathException
namespace in interface Receivernamespace in class ProxyReceivernamespaceBinding - the prefix/uri pairproperties - any special properties to be passed on this call
IllegalStateException: - attempt to output a namespace when there is no open element
start tag
XPathException - if an error occurs
public void processingInstruction(String target,
CharSequence data,
int locationId,
int properties)
throws XPathException
processingInstruction in interface ReceiverprocessingInstruction in class ProxyReceivertarget - The PI name. This must be a legal name (it will not be checked).data - The data portion of the processing instructionlocationId - an integer which can be interpreted using a LocationProvider to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.properties - Additional information about the PI.
XPathException - if an error occurs
public void startDocument(int properties)
throws XPathException
startDocument in interface ReceiverstartDocument in class ProxyReceiverproperties - bit-significant integer indicating properties of the document node.
The definitions of the bits are in class ReceiverOptions
XPathException - if an error occurs
public void startElement(NodeName nameCode,
SchemaType typeCode,
int locationId,
int properties)
throws XPathException
startElement in interface ReceiverstartElement in class ProxyReceivernameCode - 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 nodelocationId - an integer which can be interpreted using a LocationProvider to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.
XPathException - if an error occurs
public void endDocument()
throws XPathException
endDocument in interface ReceiverendDocument in class ProxyReceiverXPathException - if an error occurs
public void endElement()
throws XPathException
endElement in interface ReceiverendElement in class ProxyReceiverXPathException - if an error occurs
public void close()
throws XPathException
close in interface Receiverclose in class ProxyReceiverXPathException - if an error occurs
public void append(Item item,
int locationId,
int copyNamespaces)
throws XPathException
append in class ProxyReceiveritem - the item to be appendedlocationId - the location of the calling instruction, for diagnosticscopyNamespaces - if the item is an element node, this indicates whether its namespaces
need to be copied. Values are NodeInfo.ALL_NAMESPACES,
NodeInfo.LOCAL_NAMESPACES, NodeInfo.NO_NAMESPACES
XPathException - if the operation failspublic boolean usesTypeAnnotations()
usesTypeAnnotations in interface ReceiverusesTypeAnnotations in class ProxyReceiver
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||