org.apache.xalan.templates

Class ElemNumber

Implemented Interfaces:
Document, Element, ExpressionNode, Node, NodeList, PrefixResolver, Serializable, SourceLocator, WhitespaceStrippingElementMatcher, XSLTVisitable

public class ElemNumber
extends ElemTemplateElement

Implement xsl:number.
 <!ELEMENT xsl:number EMPTY>
 <!ATTLIST xsl:number
    level (single|multiple|any) "single"
    count %pattern; #IMPLIED
    from %pattern; #IMPLIED
    value %expr; #IMPLIED
    format %avt; '1'
    lang %avt; #IMPLIED
    letter-value %avt; #IMPLIED
    grouping-separator %avt; #IMPLIED
    grouping-size %avt; #IMPLIED
 >
 

See Also:
number in XSLT Specification

Fields inherited from interface org.w3c.dom.Node

ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE

Method Summary

ElemTemplateElement
appendChild(ElemTemplateElement newChild)
Add a child to the child list.
void
callChildVisitors(XSLTVisitor visitor, boolean callAttrs)
Call the children visitors.
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)
Execute an xsl:number instruction.
XPath
getCount()
Get the "count" attribute.
AVT
getFormat()
Get the "format" attribute.
XPath
getFrom()
Get the "from" attribute.
AVT
getGroupingSeparator()
Get the "grouping-separator" attribute.
AVT
getGroupingSize()
Get the "grouping-size" attribute.
AVT
getLang()
Get the "lang" attribute.
AVT
getLetterValue()
Get the "letter-value" attribute.
int
getLevel()
Get the "level" attribute.
String
getNodeName()
Return the node name.
int
getPreviousNode(XPathContext xctxt, int pos)
Get the previous node to be counted.
int
getTargetNode(XPathContext xctxt, int sourceNode)
Get the target node that will be counted..
XPath
getValue()
Get the "value" attribute.
int
getXSLToken()
Get an int constant identifying the type of element.
void
setCount(XPath v)
Set the "count" attribute.
void
setFormat(AVT v)
Set the "format" attribute.
void
setFrom(XPath v)
Set the "from" attribute.
void
setGroupingSeparator(AVT v)
Set the "grouping-separator" attribute.
void
setGroupingSize(AVT v)
Set the "grouping-size" attribute.
void
setLang(AVT v)
Set the "lang" attribute.
void
setLetterValue(AVT v)
Set the "letter-value" attribute.
void
setLevel(int v)
Set the "level" attribute.
void
setValue(XPath v)
Set the "value" attribute.

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

appendChild, appendChild, callVisitors, canAcceptVariables, canStripWhiteSpace, compareTo, compose, containsExcludeResultPrefix, endCompose, error, error, execute, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getBaseIdentifier, getChildNodes, getColumnNumber, getDOMBackPointer, getDeclaredPrefixes, getEndColumnNumber, getEndLineNumber, getFirstChild, getFirstChildElem, getLastChild, getLastChildElem, getLength, getLineNumber, getLocalName, getNamespaceForPrefix, getNamespaceForPrefix, getNextSibling, getNextSiblingElem, getNodeName, getNodeType, getOwnerDocument, getOwnerXSLTemplate, getParentElem, getParentNode, getParentNodeElem, getPrefixes, getPreviousSibling, getPreviousSiblingElem, getPublicId, getStylesheet, getStylesheetComposed, getStylesheetRoot, getSystemId, getTagName, getUid, getXSLToken, 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, appendChild, appendData, cloneNode, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, deleteData, error, error, getAttribute, getAttributeNS, getAttributeNode, getAttributeNodeNS, getAttributes, getChildNodes, getDoctype, getDocumentElement, getElementById, getElementsByTagName, getElementsByTagNameNS, getEncoding, getFirstChild, getImplementation, getLastChild, getLength, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getOwnerElement, getParentNode, getPrefix, getPreviousSibling, getSpecified, getStandalone, getStrictErrorChecking, getTagName, getVersion, hasAttribute, hasAttributeNS, hasAttributes, hasChildNodes, importNode, insertBefore, insertData, isSupported, item, normalize, removeAttribute, removeAttributeNS, removeAttributeNode, removeChild, replaceChild, replaceData, setAttribute, setAttributeNS, setAttributeNode, setAttributeNodeNS, setData, setEncoding, setNodeValue, setPrefix, setStandalone, setStrictErrorChecking, setValue, setVersion, splitText, substringData

Method Details

appendChild

public ElemTemplateElement appendChild(ElemTemplateElement newChild)
Add a child to the child list.
Overrides:
appendChild in interface ElemTemplateElement

Parameters:
newChild - Child to add to child list

Returns:
Child just added to child list


callChildVisitors

public void callChildVisitors(XSLTVisitor visitor,
                              boolean callAttrs)
Call the children visitors.

Parameters:
visitor - The visitor whose appropriate method will be called.


compose

public void compose(StylesheetRoot sroot)
            throws 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 interface ElemTemplateElement


execute

public void execute(TransformerImpl transformer)
            throws TransformerException
Execute an xsl:number instruction. The xsl:number element is used to insert a formatted number into the result tree.
Overrides:
execute in interface ElemTemplateElement

Parameters:
transformer - non-null reference to the the current transform-time state.

Throws:
TransformerException -


getCount

public XPath getCount()
Get the "count" attribute. The count attribute is a pattern that specifies what nodes should be counted at those levels. If count attribute is not specified, then it defaults to the pattern that matches any node with the same node type as the current node and, if the current node has an expanded-name, with the same expanded-name as the current node.

Returns:
Value of "count" attribute.


getFormat

public AVT getFormat()
Get the "format" attribute. The "format" attribute is used to control conversion of a list of numbers into a string.

Returns:
Value of "format" attribute.

See Also:
convert in XSLT Specification


getFrom

public XPath getFrom()
Get the "from" attribute. For level="single" or level="multiple": Only ancestors that are searched are those that are descendants of the nearest ancestor that matches the from pattern. For level="any: Only nodes after the first node before the current node that match the from pattern are considered.

Returns:
Value of "from" attribute.


getGroupingSeparator

public AVT getGroupingSeparator()
Get the "grouping-separator" attribute. The grouping-separator attribute gives the separator used as a grouping (e.g. thousands) separator in decimal numbering sequences.

Returns:
Value of "grouping-separator" attribute.

See Also:
convert in XSLT Specification


getGroupingSize

public AVT getGroupingSize()
Get the "grouping-size" attribute. The optional grouping-size specifies the size (normally 3) of the grouping.

Returns:
Value of "grouping-size" attribute.

See Also:
convert in XSLT Specification


getLang

public AVT getLang()
Get the "lang" attribute. When numbering with an alphabetic sequence, the lang attribute specifies which language's alphabet is to be used; it has the same range of values as xml:lang [XML]; if no lang value is specified, the language should be determined from the system environment. Implementers should document for which languages they support numbering.

Returns:
Value ofr "lang" attribute.

See Also:
convert in XSLT Specification


getLetterValue

public AVT getLetterValue()
Get the "letter-value" attribute. The letter-value attribute disambiguates between numbering sequences that use letters.

Returns:
Value to set for "letter-value" attribute.

See Also:
convert in XSLT Specification


getLevel

public int getLevel()
Get the "level" attribute. The level attribute specifies what levels of the source tree should be considered; it has the values single, multiple or any. The default is single.

Returns:
Value of "level" attribute.


getNodeName

public String getNodeName()
Return the node name.
Specified by:
getNodeName in interface Node
Overrides:
getNodeName in interface ElemTemplateElement

Returns:
The element's name


getPreviousNode

public int getPreviousNode(XPathContext xctxt,
                           int pos)
            throws TransformerException
Get the previous node to be counted.

Parameters:
xctxt - The XPath runtime state for this.
pos - The current node

Returns:
the previous node to be counted.

Throws:
TransformerException -


getTargetNode

public int getTargetNode(XPathContext xctxt,
                         int sourceNode)
            throws TransformerException
Get the target node that will be counted..

Parameters:
xctxt - The XPath runtime state for this.
sourceNode - non-null reference to the current source node.

Returns:
the target node that will be counted

Throws:
TransformerException -


getValue

public XPath getValue()
Get the "value" attribute. The value attribute contains an expression. The expression is evaluated and the resulting object is converted to a number as if by a call to the number function.

Returns:
Value of "value" attribute.


getXSLToken

public int getXSLToken()
Get an int constant identifying the type of element.
Overrides:
getXSLToken in interface ElemTemplateElement

Returns:
The token ID for this element

See Also:
Constants


setCount

public void setCount(XPath v)
Set the "count" attribute. The count attribute is a pattern that specifies what nodes should be counted at those levels. If count attribute is not specified, then it defaults to the pattern that matches any node with the same node type as the current node and, if the current node has an expanded-name, with the same expanded-name as the current node.

Parameters:
v - Value to set for "count" attribute.


setFormat

public void setFormat(AVT v)
Set the "format" attribute. The "format" attribute is used to control conversion of a list of numbers into a string.

Parameters:
v - Value to set for "format" attribute.

See Also:
convert in XSLT Specification


setFrom

public void setFrom(XPath v)
Set the "from" attribute. Specifies where to count from. For level="single" or level="multiple": Only ancestors that are searched are those that are descendants of the nearest ancestor that matches the from pattern. For level="any: Only nodes after the first node before the current node that match the from pattern are considered.

Parameters:
v - Value to set for "from" attribute.


setGroupingSeparator

public void setGroupingSeparator(AVT v)
Set the "grouping-separator" attribute. The grouping-separator attribute gives the separator used as a grouping (e.g. thousands) separator in decimal numbering sequences.

Parameters:
v - Value to set for "grouping-separator" attribute.

See Also:
convert in XSLT Specification


setGroupingSize

public void setGroupingSize(AVT v)
Set the "grouping-size" attribute. The optional grouping-size specifies the size (normally 3) of the grouping.

Parameters:
v - Value to set for "grouping-size" attribute.

See Also:
convert in XSLT Specification


setLang

public void setLang(AVT v)
Set the "lang" attribute. When numbering with an alphabetic sequence, the lang attribute specifies which language's alphabet is to be used; it has the same range of values as xml:lang [XML]; if no lang value is specified, the language should be determined from the system environment. Implementers should document for which languages they support numbering.

Parameters:
v - Value to set for "lang" attribute.

See Also:
convert in XSLT Specification


setLetterValue

public void setLetterValue(AVT v)
Set the "letter-value" attribute. The letter-value attribute disambiguates between numbering sequences that use letters.

Parameters:
v - Value to set for "letter-value" attribute.

See Also:
convert in XSLT Specification


setLevel

public void setLevel(int v)
Set the "level" attribute. The level attribute specifies what levels of the source tree should be considered; it has the values single, multiple or any. The default is single.

Parameters:
v - Value to set for "level" attribute.


setValue

public void setValue(XPath v)
Set the "value" attribute. The value attribute contains an expression. The expression is evaluated and the resulting object is converted to a number as if by a call to the number function.

Parameters:
v - Value to set for "value" attribute.


Copyright B) 2004 Apache XML Project. All Rights Reserved.