## com.icl.saxon.expr
Class FragmentValue

    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.FragmentValue

All Implemented Interfaces:
  org.w3c.dom.NodeList

public final class FragmentValue
extends SingletonNodeSet

This class represents a Value of type result tree fragment.
A Result Tree Fragment can be created by defining a variable in XSL whose value is defined by the contents of the xsl:variable element, possibly including start and end element tags.

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
`FragmentValue(Controller c)`

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
`Emitter` `getEmitter()` Get an Emitter that can be used to feed data to this result tree fragment
`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.
`void` `replay(Emitter emitter)` Replay the saved emitter events to a new emitter
`void` `setBaseURI(java.lang.String uri)` Set the Base URI for the nodes in the result tree fragment.
`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

### FragmentValue

    public FragmentValue(Controller c)

Method Detail

### setBaseURI

    public void setBaseURI(java.lang.String uri)

  Set the Base URI for the nodes in the result tree fragment. This is defined to be the Base URI of the relevant xsl:variable element in the stylesheet.

### getEmitter

    public Emitter getEmitter()

  Get an Emitter that can be used to feed data to this result tree fragment

### asString

    public java.lang.String asString()

  Convert the result tree fragment to a string.
  Overrides:
    `asString` in class `SingletonNodeSet`
  Following copied from class: `com.icl.saxon.expr.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

### asNumber

    public double asNumber()

  Convert the result tree fragment to a number
  Overrides:
    `asNumber` in class `NodeSetValue`
  Following copied from class: `com.icl.saxon.expr.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`
  Following copied from class: `com.icl.saxon.expr.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`
  Following copied from class: `com.icl.saxon.expr.Value`
  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()

  Return an enumeration of this nodeset value.
  Overrides:
    `enumerate` in class `SingletonNodeSet`

### equals

    public boolean equals(Value other)
                   throws XPathException

  Test whether a nodeset "equals" another Value
  Overrides:
    `equals` in class `SingletonNodeSet`
  Following copied from class: `com.icl.saxon.expr.Value`
  Returns:
    a boolean giving the value of the expression, evaluated in the current context

### notEquals

    public boolean notEquals(Value other)
                      throws XPathException

  Test whether a nodeset "not-equals" another Value
  Overrides:
    `notEquals` in class `SingletonNodeSet`
  Following copied from class: `com.icl.saxon.expr.Value`
  Returns:
    a boolean giving the value of the expression, evaluated in the current context

### 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`
  Following copied from class: `com.icl.saxon.expr.NodeSetValue`
  Parameters:
    `operator` - The comparison operator, one of Tokenizer.LE, Tokenizer.LT, Tokenizer.GE, Tokenizer.GT,

### 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

### replay

    public void replay(Emitter emitter)
                throws javax.xml.transform.TransformerException

  Replay the saved emitter events to a new emitter

### display

    public void display(int level)

  Diagnostic print of expression structure
  Overrides:
    `display` in class `NodeSetValue`