## net.sf.saxon.instruct
Class QuerySimpleContentConstructor

    java.lang.Object
      net.sf.saxon.expr.ComputedExpression
          net.sf.saxon.instruct.SimpleContentConstructor
              net.sf.saxon.instruct.QuerySimpleContentConstructor

All Implemented Interfaces:
  Container, Expression, InstructionInfoProvider, java.io.Serializable, javax.xml.transform.SourceLocator

public class QuerySimpleContentConstructor
extends SimpleContentConstructor

This class implements the rules for an XQuery simple content constructor, which are used in constructing the string value of an attribute node, text node, comment node, etc, from the value of the select expression or the contained sequence constructor. These differ slightly from the XSLT rules implemented in the superclass - specifically, the sequence is simply atomized, whereas XSLT takes special steps to concatenate adjacent text nodes before inserting separators.

See Also:
  Serialized Form

Field Summary

Fields inherited from class net.sf.saxon.expr.ComputedExpression
`locationId, staticProperties`

Fields inherited from interface net.sf.saxon.expr.Expression
`EVALUATE_METHOD, ITERATE_METHOD, PROCESS_METHOD`

Constructor Summary
`QuerySimpleContentConstructor(Expression select, Expression separator)`

Method Summary
`Item` `evaluateItem(XPathContext context)` Evaluate an expression as a single item.

Methods inherited from class net.sf.saxon.instruct.SimpleContentConstructor
`analyze, computeCardinality, display, getImplementationMethod, getItemType, iterateSubExpressions, promote, simplify`

Methods inherited from class net.sf.saxon.expr.ComputedExpression

`adoptChildExpression, checkPermittedContents, computeDependencies, computeSpecialProperties, computeStaticProperties, dynamicError, dynamicError, effectiveBooleanValue, evaluateAsString, getCardinality, getColumnNumber, getConstructType, getDependencies, getExecutable, getInstructionInfo, getIntrinsicDependencies, getLineNumber, getLocationId, getParentExpression, getPublicId, getSpecialProperties, getSystemId, iterate, markTailFunctionCalls, process, resetStaticProperties, setLocationId, setParentExpression, typeError, typeError`

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

Constructor Detail

### QuerySimpleContentConstructor

    public QuerySimpleContentConstructor(Expression select,
                                         Expression separator)

Method Detail

### evaluateItem

    public Item evaluateItem(XPathContext context)
                      throws XPathException

  Evaluate an expression as a single item. This always returns either a single Item or null (denoting the empty sequence). No conversion is done. This method should not be used unless the static type of the expression is a subtype of "item" or "item?": that is, it should not be called if the expression may return a sequence. There is no guarantee that this condition will be detected.

  Specified by:
    `evaluateItem` in interface `Expression`
  Overrides:
    `evaluateItem` in class `SimpleContentConstructor`
  Parameters:
    `context` - The context in which the expression is to be evaluated
  Returns:
    the node or atomic value that results from evaluating the expression; or null to indicate that the result is an empty sequence
  Throws:
    `XPathException` - if any dynamic error occurs evaluating the expression