## com.saxonica.stream.feed
Class SimpleNodeConstructorFeed

    java.lang.Object
      com.saxonica.stream.feed.ItemFeed
          com.saxonica.stream.feed.SimpleNodeConstructorFeed

All Implemented Interfaces:
  Feed

    public class SimpleNodeConstructorFeed

extends ItemFeed

This class is used when a streaming template requests evaluation of a simple content constructor in streaming mode (that is, when it constructs a text, attribute, comment, or PI node based on the contents of the streamed document).

The SimpleContentFeed is used when the node is constructed as a result of a computation on the streamed data, for example `xsl:value-of select="distinct-values(.//@price)"`. By contrast, a SimpleContentWatch is used when the streamed nodes are selected directly, for example `xsl:value-of select=".//@price"`.

Both a Feed and a Watch are needed because a simple content constructor operates on a sequence of nodes without simply atomizing the sequence.

Constructor Summary
`SimpleNodeConstructorFeed(Expression expr, Feed result, Stack<XPathContext> contextStack)`

Method Summary
`void` `append(Item item)` Supply an item to the feed
`void` `close()` Finish evaluating the expression.
`void` `open()` Start evaluating the expression.

Methods inherited from class com.saxonica.stream.feed.ItemFeed
`getContext, getContextStack, getExpression, getPipelineConfiguration, getResult, setPipelineConfiguration`

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

Constructor Detail

### SimpleNodeConstructorFeed

    public SimpleNodeConstructorFeed(Expression expr,
                                     Feed result,
                                     Stack<XPathContext> contextStack)

Method Detail

### open

    public void open()
              throws XPathException

  Description copied from class: `ItemFeed`
  Start evaluating the expression. The default implementation does nothing.

  Specified by:
    `open` in interface `Feed`
  Overrides:
    `open` in class `ItemFeed`
  Throws:
    `XPathException` - if a dynamic error occurs

### close

    public void close()
               throws XPathException

  Description copied from class: `ItemFeed`
  Finish evaluating the expression. The default implementation does nothing.

  Specified by:
    `close` in interface `Feed`
  Overrides:
    `close` in class `ItemFeed`
  Throws:
    `XPathException` - if a dynamic error occurs

### append

    public void append(Item item)
                throws XPathException

  Supply an item to the feed

  Specified by:
    `append` in interface `Feed`
  Specified by:
    `append` in class `ItemFeed`
  Parameters:
    `item` - the item being fed
  Throws:
    `XPathException` - to report any failure

Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.