## org.apache.xalan.templates
Class ElemIf

    java.lang.Object
      org.apache.xml.utils.UnImplNode
          org.apache.xalan.templates.ElemTemplateElement
              org.apache.xalan.templates.ElemIf

All Implemented Interfaces:
  java.io.Serializable, javax.xml.transform.SourceLocator, XSLTVisitable, PrefixResolver, ExpressionNode, WhitespaceStrippingElementMatcher, org.w3c.dom.Document, org.w3c.dom.Element, org.w3c.dom.Node, org.w3c.dom.NodeList

    public class ElemIf

extends ElemTemplateElement

Implement xsl:if.

See Also:
  XXX in XSLT Specification, Serialized Form
Usage:
  **For advanced use only**

Field Summary

Fields inherited from interface org.w3c.dom.Node

`ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE`

Fields inherited from interface org.w3c.dom.Node

`ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE`

Fields inherited from interface org.w3c.dom.Node

`ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE`

Constructor Summary
`ElemIf()`

Method Summary
`void` `compose(StylesheetRoot sroot)` This function is called after everything else has been recomposed, and allows the template to set remaining values that may be based on some other property that depends on recomposition.
`void` `execute(TransformerImpl transformer)` Conditionally execute a sub-template.
`java.lang.String` `getNodeName()` Return the node name.
`XPath` `getTest()` Get the "test" attribute.
`int` `getXSLToken()` Get an int constant identifying the type of element.
`void` `setTest(XPath v)` Set the "test" attribute.

Methods inherited from class org.apache.xalan.templates.ElemTemplateElement

`appendChild, appendChild, callVisitors, canAcceptVariables, canStripWhiteSpace, compareTo, containsExcludeResultPrefix, endCompose, error, error, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getBaseIdentifier, getChildNodes, getColumnNumber, getDeclaredPrefixes, getDOMBackPointer, getEndColumnNumber, getEndLineNumber, getFirstChild, getFirstChildElem, getLastChild, getLastChildElem, getLength, getLineNumber, getLocalName, getNamespaceForPrefix, getNamespaceForPrefix, getNextSibling, getNextSiblingElem, getNodeType, getOwnerDocument, getOwnerXSLTemplate, getParentElem, getParentNode, getParentNodeElem, getPrefixes, getPreviousSibling, getPreviousSiblingElem, getPublicId, getStylesheet, getStylesheetComposed, getStylesheetRoot, getSystemId, getTagName, getUid, getXmlSpace, handlesNullPrefixes, hasChildNodes, hasTextLitOnly, hasVariableDecl, insertBefore, isCompiledTemplate, item, recompose, removeChild, replaceChild, replaceChild, resolvePrefixTables, runtimeInit, setDOMBackPointer, setEndLocaterInfo, setLocaterInfo, setParentElem, setPrefixes, setPrefixes, setUid, setXmlSpace, shouldStripWhiteSpace`

Methods inherited from class org.apache.xml.utils.UnImplNode

`adoptNode, appendData, cloneNode, compareDocumentPosition, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, deleteData, getActualEncoding, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getBaseURI, getDoctype, getDocumentElement, getDocumentURI, getDomConfig, getElementById, getElementsByTagName, getElementsByTagNameNS, getFeature, getImplementation, getInputEncoding, getNamespaceURI, getNodeValue, getOwnerElement, getPrefix, getSchemaTypeInfo, getSpecified, getStrictErrorChecking, getTextContent, getUserData, getWholeText, getXmlEncoding, getXmlStandalone, getXmlVersion, hasAttribute, hasAttributeNS, hasAttributes, importNode, insertData, isDefaultNamespace, isEqualNode, isId, isSameNode, isSupported, isWhitespaceInElementContent, lookupNamespaceURI, lookupPrefix, normalize, normalizeDocument, removeAttribute, removeAttributeNode, removeAttributeNS, removeChild, renameNode, replaceData, replaceWholeText, setActualEncoding, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setData, setDocumentURI, setIdAttribute, setIdAttribute, setIdAttributeNode, setIdAttributeNS, setInputEncoding, setNodeValue, setPrefix, setStrictErrorChecking, setTextContent, setUserData, setValue, setXmlEncoding, setXmlStandalone, setXmlVersion, splitText, substringData`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ElemIf

    public ElemIf()

Method Detail

### setTest

    public void setTest(XPath v)

  Set the "test" attribute. The xsl:if element must have a test attribute, which specifies an expression.

  Parameters:
    `v` - test attribute to set

### getTest

    public XPath getTest()

  Get the "test" attribute. The xsl:if element must have a test attribute, which specifies an expression.

  Returns:
    the "test" attribute for this element.

### compose

    public void compose(StylesheetRoot sroot)
                 throws javax.xml.transform.TransformerException

  This function is called after everything else has been recomposed, and allows the template to set remaining values that may be based on some other property that depends on recomposition.

  Overrides:
    `compose` in class `ElemTemplateElement`
  Parameters:
    `sroot` - The root stylesheet.
  Throws:
    `javax.xml.transform.TransformerException`

### getXSLToken

    public int getXSLToken()

  Get an int constant identifying the type of element.

  Overrides:
    `getXSLToken` in class `ElemTemplateElement`
  Returns:
    The token ID for this element
  See Also:
    `Constants`

### getNodeName

    public java.lang.String getNodeName()

  Return the node name.

  Specified by:
    `getNodeName` in interface `org.w3c.dom.Node`
  Overrides:
    `getNodeName` in class `ElemTemplateElement`
  Returns:
    the element's name

### execute

    public void execute(TransformerImpl transformer)
                 throws javax.xml.transform.TransformerException

  Conditionally execute a sub-template. The expression is evaluated and the resulting object is converted to a boolean as if by a call to the boolean function. If the result is true, then the content template is instantiated; otherwise, nothing is created.

  Overrides:
    `execute` in class `ElemTemplateElement`
  Parameters:
    `transformer` - non-null reference to the the current transform-time state.
  Throws:
    `javax.xml.transform.TransformerException`

Copyright © 2005 Apache XML Project. All Rights Reserved.