Package com.icl.saxon.expr
Class TextFragmentValue
- java.lang.Object
-
- com.icl.saxon.expr.Expression
-
- com.icl.saxon.expr.Value
-
- com.icl.saxon.expr.NodeSetValue
-
- com.icl.saxon.expr.SingletonNodeSet
-
- com.icl.saxon.expr.TextFragmentValue
-
- All Implemented Interfaces:
org.w3c.dom.NodeList
public final class TextFragmentValue extends SingletonNodeSet
This class represents a Value of type result tree fragment, specifically, an RTF whose root owns a single text node.
-
-
Field Summary
-
Fields inherited from class com.icl.saxon.expr.SingletonNodeSet
generalUseAllowed, node
-
Fields inherited from class com.icl.saxon.expr.Expression
staticContext
-
-
Constructor Summary
Constructors Constructor Description TextFragmentValue(java.lang.String value, java.lang.String systemId, Controller controller)
Constructor: create a result tree fragment containing a single text node
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
asBoolean()
Convert the result tree fragment to a booleandouble
asNumber()
Convert the result tree fragment to a numberjava.lang.String
asString()
Convert the result tree fragment to a string.boolean
compare(int operator, Value other)
Test how a FragmentValue compares to another Value under a relational comparison.void
copy(Outputter out)
Copy the result tree fragment value to a given Outputtervoid
display(int level)
Diagnostic print of expression structureNodeEnumeration
enumerate()
Return an enumeration of this nodeset value.boolean
equals(Value other)
Test whether a nodeset "equals" another Valueint
getCount()
Count the nodes in the node-set.int
getDataType()
Determine the data type of the expression, if possibleNodeInfo
getFirst()
Get the first node in the nodeset (in document order)DocumentInfo
getRootNode()
Get the root (document) nodeint
getType()
Return the type of the valueboolean
notEquals(Value other)
Test whether a nodeset "not-equals" another Valuevoid
outputStringValue(Outputter out, Context context)
Evaluate an expression as a String and write the result to the specified outputter.Expression
simplify()
Simplify the expression-
Methods inherited from class com.icl.saxon.expr.SingletonNodeSet
allowGeneralUse, evaluate, evaluateAsNodeSet, getLength, isGeneralUseAllowed, isSorted, item, setSorted, sort
-
Methods inherited from class com.icl.saxon.expr.NodeSetValue
conversionPreference, convertToJava, enumerate
-
Methods inherited from class com.icl.saxon.expr.Value
getDependencies, inverse, numericCompare, reduce, stringToNumber
-
Methods inherited from class com.icl.saxon.expr.Expression
containsReferences, evaluateAsBoolean, evaluateAsNumber, evaluateAsString, getStaticContext, indent, isContextDocumentNodeSet, make, setStaticContext, usesCurrent
-
-
-
-
Constructor Detail
-
TextFragmentValue
public TextFragmentValue(java.lang.String value, java.lang.String systemId, Controller controller)
Constructor: create a result tree fragment containing a single text node- Parameters:
value
- : a String containing the value
-
-
Method Detail
-
asString
public java.lang.String asString()
Convert the result tree fragment to a string.- Overrides:
asString
in classSingletonNodeSet
- Returns:
- the value of the first node in the node-set if there is one, otherwise an empty string
-
outputStringValue
public void outputStringValue(Outputter out, Context context) throws javax.xml.transform.TransformerException
Evaluate an expression as a String and write the result to the specified outputter.- Overrides:
outputStringValue
in classExpression
- Parameters:
out
- The required outputtercontext
- The context in which the expression is to be evaluated- Throws:
javax.xml.transform.TransformerException
-
asNumber
public double asNumber()
Convert the result tree fragment to a number- Overrides:
asNumber
in classNodeSetValue
- Returns:
- the number obtained by evaluating as a String and converting the string to a number
-
asBoolean
public boolean asBoolean()
Convert the result tree fragment to a boolean- Overrides:
asBoolean
in classSingletonNodeSet
- Returns:
- true if the node set is not empty
-
getCount
public int getCount()
Count the nodes in the node-set.- Overrides:
getCount
in classSingletonNodeSet
-
simplify
public Expression simplify()
Simplify the expression- Overrides:
simplify
in classSingletonNodeSet
- Returns:
- the simplified expression
-
getFirst
public NodeInfo getFirst()
Get the first node in the nodeset (in document order)- Overrides:
getFirst
in classSingletonNodeSet
- Returns:
- the first node
-
enumerate
public NodeEnumeration enumerate() throws XPathException
Return an enumeration of this nodeset value.- Overrides:
enumerate
in classSingletonNodeSet
- Throws:
XPathException
-
equals
public boolean equals(Value other) throws XPathException
Test whether a nodeset "equals" another Value- Overrides:
equals
in classSingletonNodeSet
- Returns:
- a boolean giving the value of the expression, evaluated in the current context
- Throws:
XPathException
-
notEquals
public boolean notEquals(Value other) throws XPathException
Test whether a nodeset "not-equals" another Value- Overrides:
notEquals
in classSingletonNodeSet
- Returns:
- a boolean giving the value of the expression, evaluated in the current context
- Throws:
XPathException
-
compare
public boolean compare(int operator, Value other) throws XPathException
Test how a FragmentValue compares to another Value under a relational comparison.- Overrides:
compare
in classNodeSetValue
- Parameters:
operator
- The comparison operator, one of Tokenizer.LE, Tokenizer.LT, Tokenizer.GE, Tokenizer.GT,- Throws:
XPathException
-
getType
public int getType()
Return the type of the value- Returns:
- Value.NODESET (always)
-
getDataType
public int getDataType()
Determine the data type of the expression, if possible- Overrides:
getDataType
in classNodeSetValue
- Returns:
- Value.NODESET
-
getRootNode
public DocumentInfo getRootNode()
Get the root (document) node
-
copy
public void copy(Outputter out) throws javax.xml.transform.TransformerException
Copy the result tree fragment value to a given Outputter- Throws:
javax.xml.transform.TransformerException
-
display
public void display(int level)
Diagnostic print of expression structure- Overrides:
display
in classNodeSetValue
-
-