net.sf.saxon.style
Class UseWhenFilter
- Receiver, Result
public class UseWhenFilter
This is a filter inserted into the input pipeline for processing stylesheet modules, whose
task is to evaluate use-when expressions and discard those parts of the stylesheet module
for which the use-when attribute evaluates to false.
void | attribute(int nameCode, int typeCode, CharSequence value, int locationId, int properties) - Notify an attribute.
|
void | characters(CharSequence chars, int locationId, int properties) - Character data
|
void | comment(CharSequence chars, int locationId, int properties) - Output a comment
|
void | endElement() - End of element
|
boolean | evaluateUseWhen(String expression, int locationId) - Evaluate a use-when attribute
|
void | namespace(int namespaceCode, int properties) - Notify a namespace.
|
void | open() - Start of document
|
void | processingInstruction(String target, CharSequence data, int locationId, int properties) - Processing Instruction
|
void | startContent() - Notify the start of the content, that is, the completion of all attributes and namespaces.
|
void | startElement(int nameCode, int typeCode, int locationId, int properties) - Notify the start of an element.
|
append , attribute , characters , close , comment , endDocument , endElement , getConfiguration , getDocumentLocator , getNamePool , getUnderlyingReceiver , namespace , open , processingInstruction , setPipelineConfiguration , setSystemId , setUnderlyingReceiver , setUnparsedEntity , startContent , startDocument , startElement |
UseWhenFilter
public UseWhenFilter(StartTagBuffer startTag)
Create a UseWhenFilter
startTag
- a preceding filter on the pipeline that buffers the attributes of a start tag
attribute
public void attribute(int nameCode,
int typeCode,
CharSequence value,
int locationId,
int properties)
throws XPathException
Notify an attribute. Attributes are notified after the startElement event, and before any
children. Namespaces and attributes may be intermingled.
- attribute in interface Receiver
- attribute in interface ProxyReceiver
nameCode
- 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:
evaluateUseWhen
public boolean evaluateUseWhen(String expression,
int locationId)
throws XPathException
Evaluate a use-when attribute
expression
- the expression to be evaluatedlocationId
- identifies the location of the expression in case error need to be reported
- the effective boolean value of the result of evaluating the expression
namespace
public void namespace(int namespaceCode,
int properties)
throws XPathException
Notify a namespace. Namespaces are notified after the startElement event, and before
any children for the element. The namespaces that are reported are only required
to include those that are different from the parent element; however, duplicates may be reported.
A namespace must not conflict with any namespaces already used for element or attribute names.
- namespace in interface Receiver
- namespace in interface ProxyReceiver
namespaceCode
- an integer: the top half is a prefix code, the bottom half a URI code.
These may be translated into an actual prefix and URI using the name pool. A prefix code of
zero represents the empty prefix (that is, the default namespace). A URI code of zero represents
a URI of "", that is, a namespace undeclaration.
startContent
public void startContent()
throws XPathException
Notify the start of the content, that is, the completion of all attributes and namespaces.
Note that the initial receiver of output from XSLT instructions will not receive this event,
it has to detect it itself. Note that this event is reported for every element even if it has
no attributes, no namespaces, and no content.
- startContent in interface Receiver
- startContent in interface ProxyReceiver
startElement
public void startElement(int nameCode,
int typeCode,
int locationId,
int properties)
throws XPathException
Notify the start of an element.
- startElement in interface Receiver
- startElement in interface 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
- bit-significant properties of the element node