org.exolab.adaptx.xslt

Class XSLNumber


public class XSLNumber
extends XSLObject

Represents the xsl:number element. Handles numbering in the source tree
Section 2.7.10 of the W3C XSL Working Draft 1.0 (19981216)
Section 9.7 of the W3C XSLT Working Draft 1.0 (1990421)
Version:
$Revision: 3633 $ $Date: 2003-03-01 02:38:44 -0500 (Sat, 01 Mar 2003) $
Author:
Keith Visco

Field Summary

Fields inherited from class org.exolab.adaptx.xslt.XSLObject

APPLY_IMPORTS, APPLY_TEMPLATES, ARG, ATTRIBUTE, ATTRIBUTE_SET, CALL_TEMPLATE, CDATA, CHOOSE, COMMENT, CONTENTS, COPY, COPY_OF, ELEMENT, ENTITY_REF, FOR_EACH, FUNCTIONS, ID, IF, IMPORT, INCLUDE, KEY, LITERAL, LOCALE, MESSAGE, NUMBER, OTHERWISE, OUTPUT, PARAM, PI, PRESERVE_SPACE, SCRIPT, SORT, STRIP_SPACE, STYLESHEET, TEMPLATE, TEXT, VALUE_OF, VARIABLE, WHEN, WITH_PARAM

Constructor Summary

XSLNumber()
Creates a new XSLNumber Object

Method Summary

int[]
doNumbering(XPathNode node, ProcessorState ps)
Performs the numbering of the given XPathNode
String
getFormattedNumber(XPathNode node, ProcessorState ps)
Performs the numbering of the given XPathNode and returns the number using the format of this XSLNumber.
void
setAttribute(String name, String value)
void
setCountAttr(String count)
Sets the count expression of this XSLNumber
void
setFormatAttr(String format)
Sets the format pattern of this XSLNumber
void
setFromAttr(String from)
void
setLevel(String level)
Sets the level of numbering for this XSLNumber

Methods inherited from class org.exolab.adaptx.xslt.XSLObject

addNamespaceDecl, appendAction, appendText, appendText, getActions, getAttribute, getAttributes, getNamespace, getNearestAncestor, getNodeValue, getStylesheet, getText, getType, getTypeFromName, getTypeName, resolveNamespace, setAllowActions, setAttribute, setNamespace, setTypeName

Constructor Details

XSLNumber

public XSLNumber()
Creates a new XSLNumber Object

Method Details

doNumbering

public int[] doNumbering(XPathNode node,
                         ProcessorState ps)
            throws XPathException
Performs the numbering of the given XPathNode
Parameters:
Returns:
an array of integers which represent the multi-level number of the given element. Single-level numbering will return an array of size 1.

getFormattedNumber

public String getFormattedNumber(XPathNode node,
                                 ProcessorState ps)
Performs the numbering of the given XPathNode and returns the number using the format of this XSLNumber.
Parameters:
node - the XPathNode to get the number of. This node must be of type XPathNode.ELEMENT.
Returns:
the formatted number as a String

setAttribute

public void setAttribute(String name,
                         String value)
            throws XSLException
Overrides:
setAttribute in interface XSLObject
See Also:
XSLObject

setCountAttr

public void setCountAttr(String count)
Sets the count expression of this XSLNumber
Parameters:
count - the String value to use as the count expr expression of this XSLNumber

setFormatAttr

public void setFormatAttr(String format)
Sets the format pattern of this XSLNumber
Parameters:
format - the Number Format to use

setFromAttr

public void setFromAttr(String from)

setLevel

public void setLevel(String level)
Sets the level of numbering for this XSLNumber
Parameters:
level - the desired level.
Levels are "single", "multi", or "any"