org.apache.xalan.templates
Class ElemForEach

java.lang.Object
  |
  +--org.apache.xml.utils.UnImplNode
        |
        +--org.apache.xalan.templates.ElemTemplateElement
              |
              +--org.apache.xalan.templates.ElemForEach
Direct Known Subclasses:
ElemCallTemplate

public class ElemForEach
extends ElemTemplateElement

**For advanced use only** Implement xsl:for-each.

 

 
 

See Also:
for-each in XSLT Specification, Serialized Form

Constructor Summary
ElemForEach()
          Construct a element representing xsl:for-each.
 
Method Summary
 Node appendChild(Node newChild)
          Add a child to the child list.
 void execute(TransformerImpl transformer, Node sourceNode, QName mode)
          Execute the xsl:for-each transformation
 java.lang.String getNodeName()
          Return the node name.
 XPath getSelect()
          Get the "select" attribute.
 XPath getSelectOrDefault()
          Get the "select" attribute or default selection pattern.
 ElemSort getSortElem(int i)
          Get a xsl:sort element associated with this element.
 int getSortElemCount()
          Get the count xsl:sort elements associated with this element.
 int getXSLToken()
          Get an int constant identifying the type of element.
 void setSelect(XPath xpath)
          Set the "select" attribute.
 void setSortElem(ElemSort sortElem)
          Set a xsl:sort element associated with this element.
 void transformSelectedNodes(TransformerImpl transformer, Node sourceNode, ElemTemplateElement template, QName mode)
          **For advanced use only** Perform a query if needed, and call transformNode for each child.
 
Methods inherited from class org.apache.xalan.templates.ElemTemplateElement
canStripWhiteSpace, compareTo, compose, containsExcludeResultPrefix, error, getBaseIdentifier, getChildNodes, getColumnNumber, getDeclaredPrefixes, getDOMBackPointer, getFirstChild, getFirstChildElem, getLastChild, getLength, getLineNumber, getNamespaceForPrefix, getNamespaceForPrefix, getNextSibling, getNextSiblingElem, getNodeType, getOwnerDocument, getParentElem, getParentNode, getPrefixes, getPreviousSibling, getPublicId, getStylesheet, getStylesheetComposed, getStylesheetRoot, getSystemId, getTagName, getUid, getXmlSpace, hasChildNodes, isCompiledTemplate, item, recompose, removeChild, replaceChild, resolvePrefixTables, runtimeInit, setDOMBackPointer, setLocaterInfo, setPrefixes, setPrefixes, setUid, setXmlSpace, shouldStripWhiteSpace
 
Methods inherited from class org.apache.xml.utils.UnImplNode
appendData, cloneNode, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, deleteData, error, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getDoctype, getDocumentElement, getElementById, getElementsByTagName, getElementsByTagNameNS, getImplementation, getLocalName, getNamespaceURI, getNodeValue, getOwnerElement, getPrefix, getSpecified, hasAttribute, hasAttributeNS, hasAttributes, importNode, insertBefore, insertData, isSupported, normalize, removeAttribute, removeAttributeNode, removeAttributeNS, removeChild, replaceData, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setData, setNodeValue, setPrefix, setValue, splitText, substringData
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ElemForEach

public ElemForEach()
Construct a element representing xsl:for-each.
Method Detail

setSelect

public void setSelect(XPath xpath)
Set the "select" attribute.
Parameters:
xpath - The XPath expression for the "select" attribute.

getSelect

public XPath getSelect()
Get the "select" attribute.
Returns:
The XPath expression for the "select" attribute.

getSelectOrDefault

public XPath getSelectOrDefault()
Get the "select" attribute or default selection pattern.
Returns:
the "select" attribute or if null, the default selection pattern ("node()")

getSortElemCount

public int getSortElemCount()
Get the count xsl:sort elements associated with this element.
Returns:
The number of xsl:sort elements.

getSortElem

public ElemSort getSortElem(int i)
Get a xsl:sort element associated with this element.
Parameters:
i - Index of xsl:sort element to get
Returns:
xsl:sort element at given index

setSortElem

public void setSortElem(ElemSort sortElem)
Set a xsl:sort element associated with this element.
Parameters:
sortElem - xsl:sort element to set

getXSLToken

public int getXSLToken()
Get an int constant identifying the type of element.
Returns:
The token ID for this element
Overrides:
getXSLToken in class ElemTemplateElement
See Also:
Constants

getNodeName

public java.lang.String getNodeName()
Return the node name.
Returns:
The element's name
Overrides:
getNodeName in class ElemTemplateElement

execute

public void execute(TransformerImpl transformer,
                    Node sourceNode,
                    QName mode)
             throws TransformerException
Execute the xsl:for-each transformation
Parameters:
transformer - non-null reference to the the current transform-time state.
sourceNode - non-null reference to the current source node.
mode - reference, which may be null, to the current mode.
Throws:
TransformerException -  
Overrides:
execute in class ElemTemplateElement

transformSelectedNodes

public void transformSelectedNodes(TransformerImpl transformer,
                                   Node sourceNode,
                                   ElemTemplateElement template,
                                   QName mode)
                            throws TransformerException
**For advanced use only** Perform a query if needed, and call transformNode for each child.
Parameters:
transformer - non-null reference to the the current transform-time state.
sourceNode - non-null reference to the current source node.
stylesheetTree - The owning stylesheet tree.
xslInstruction - The stylesheet element context (depricated -- I do not think we need this).
template - The owning template context.
sourceNodeContext - The current source node context.
mode - The current mode.
selectPattern - The XPath with which to perform the selection.
xslToken - The current XSLT instruction (depricated -- I do not think we want this).
tcontext - The TransformerImpl context.
selectStackFrameIndex - The stack frame context for executing the select statement.
Throws:
TransformerException - Thrown in a variety of circumstances.

appendChild

public Node appendChild(Node newChild)
                 throws DOMException
Add a child to the child list.
Parameters:
newChild - Child to add to child list
Returns:
Child just added to child list
Throws:
DOMException -  
Overrides:
appendChild in class ElemTemplateElement


Copyright � 2000 Apache XML Project. All Rights Reserved.