## 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.Value
`ANY, BOOLEAN, NODESET, NUMBER, OBJECT, STRING`

Fields inherited from class com.icl.saxon.expr.Expression
`staticContext`

Constructor Summary
`TextFragmentValue(java.lang.String value, java.lang.String systemId, Controller controller)` Constructor: create a result tree fragment containing a single text node

Method Summary
`boolean` `asBoolean()` Convert the result tree fragment to a boolean
`double` `asNumber()` Convert the result tree fragment to a number
`java.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 Outputter
`void` `display(int level)` Diagnostic print of expression structure
`NodeEnumeration` `enumerate()` Return an enumeration of this nodeset value.
`boolean` `equals(Value other)` Test whether a nodeset "equals" another Value
`int` `getCount()` Count the nodes in the node-set.
`int` `getDataType()` Determine the data type of the expression, if possible
`NodeInfo` `getFirst()` Get the first node in the nodeset (in document order)
`DocumentInfo` `getRootNode()` Get the root (document) node
`int` `getType()` Return the type of the value
`boolean` `notEquals(Value other)` Test whether a nodeset "not-equals" another Value
`void` `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`

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

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

Method Detail

### asString

    public java.lang.String asString()

  Convert the result tree fragment to a string.

  Overrides:
    `asString` in class `SingletonNodeSet`
  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 class `Expression`
  Parameters:
    `out` - The required outputter
    `context` - The context in which the expression is to be evaluated
    `javax.xml.transform.TransformerException`

### asNumber

    public double asNumber()

  Convert the result tree fragment to a number

  Overrides:
    `asNumber` in class `NodeSetValue`
  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 class `SingletonNodeSet`
  Returns:
    true if the node set is not empty

### getCount

    public int getCount()

  Count the nodes in the node-set.

  Overrides:
    `getCount` in class `SingletonNodeSet`

### simplify

    public Expression simplify()

  Simplify the expression

  Overrides:
    `simplify` in class `SingletonNodeSet`
  Returns:
    the simplified expression

### getFirst

    public NodeInfo getFirst()

  Get the first node in the nodeset (in document order)

  Overrides:
    `getFirst` in class `SingletonNodeSet`
  Returns:
    the first node

### enumerate

    public NodeEnumeration enumerate()
                              throws XPathException

  Return an enumeration of this nodeset value.

  Overrides:
    `enumerate` in class `SingletonNodeSet`
    `XPathException`

### equals

    public boolean equals(Value other)
                   throws XPathException

  Test whether a nodeset "equals" another Value

  Overrides:
    `equals` in class `SingletonNodeSet`
  Returns:
    a boolean giving the value of the expression, evaluated in the current context
    `XPathException`

### notEquals

    public boolean notEquals(Value other)
                      throws XPathException

  Test whether a nodeset "not-equals" another Value

  Overrides:
    `notEquals` in class `SingletonNodeSet`
  Returns:
    a boolean giving the value of the expression, evaluated in the current context
    `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 class `NodeSetValue`
  Parameters:
    `operator` - The comparison operator, one of Tokenizer.LE, Tokenizer.LT, Tokenizer.GE, Tokenizer.GT,
    `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 class `NodeSetValue`
  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

    `javax.xml.transform.TransformerException`

### display

    public void display(int level)

  Diagnostic print of expression structure

  Overrides:
    `display` in class `NodeSetValue`