net.sf.saxon.style

Class StyleNodeFactory

public class StyleNodeFactory extends Object implements NodeFactory

Class StyleNodeFactory.
A Factory for nodes in the stylesheet tree.
Currently only allows Element nodes to be user-constructed.

Author: Michael H. Kay

Field Summary
protected Configurationconfig
protected NamePoolnamePool
Constructor Summary
StyleNodeFactory(Configuration config)
Create the node factory for representing an XSLT stylesheet as a tree structure
Method Summary
booleanisElementAvailable(String uri, String localName)
Method to support the element-available() function
ElementImplmakeElementNode(NodeInfo parent, int nameCode, int typeCode, AttributeCollectionImpl attlist, int[] namespaces, int namespacesUsed, PipelineConfiguration pipe, int locationId, int sequence)
Create an Element node.
protected StyleElementmakeXSLElement(int f)
Make an XSL element node

Field Detail

config

protected Configuration config

namePool

protected NamePool namePool

Constructor Detail

StyleNodeFactory

public StyleNodeFactory(Configuration config)
Create the node factory for representing an XSLT stylesheet as a tree structure

Parameters: config the Saxon configuration

Method Detail

isElementAvailable

public boolean isElementAvailable(String uri, String localName)
Method to support the element-available() function

Parameters: uri the namespace URI localName the local Name

Returns: true if an extension element of this name is recognized

makeElementNode

public ElementImpl makeElementNode(NodeInfo parent, int nameCode, int typeCode, AttributeCollectionImpl attlist, int[] namespaces, int namespacesUsed, PipelineConfiguration pipe, int locationId, int sequence)
Create an Element node. Note, if there is an error detected while constructing the Element, we add the element anyway, and return success, but flag the element with a validation error. This allows us to report more than one error from a single compilation.

Parameters: nameCode The element name typeCode attlist the attribute list

makeXSLElement

protected StyleElement makeXSLElement(int f)
Make an XSL element node

Parameters: f the fingerprint of the node name

Returns: the constructed element node