Package com.saxonica.ee.stream.feed

## Class StringValueFeed

- java.lang.Object
- - net.sf.saxon.event.Outputter
  - - net.sf.saxon.event.ProxyOutputter
    - - com.saxonica.ee.stream.feed.ItemFeed
      - - com.saxonica.ee.stream.feed.GroundedItemFeed
        - - com.saxonica.ee.stream.feed.AbsorptionFeed
          - - com.saxonica.ee.stream.feed.StringValueFeed

- All Implemented Interfaces:
    `javax.xml.transform.Result`, `Receiver`

      public class StringValueFeed
      extends AbsorptionFeed

  This class is used when a streamed template requests evaluation of the string value of the nodes selected by a path expression, typically in response to an xsl:value-of instruction. The expression delivers a sequence of strings, one for each selected node.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.saxonica.ee.stream.feed.AbsorptionFeed

      `AbsorptionFeed.PendingItem`

  - ### Field Summary

    - ### Fields inherited from class net.sf.saxon.event.Outputter

      `pipelineConfiguration, systemId`

    - ### Fields inherited from interface javax.xml.transform.Result

      `PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `StringValueFeed​(ItemFeed result, XPathContext context)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` | The close() method is called immediately before the Watch is destroyed, that is, when the element whose declaration scopes the constraint implemented by this Watch goes out of scope.
    `protected AbsorptionFeed.PendingItem` | `makePendingItem​(int sequenceNr, FleetingParentNode node)` | Create a pending item (appropriate to the subclass) containing the data needed to compute the result value for one node in the streamed input sequence
    `protected Sequence` | `processGroundedItem​(Item item)` | Process a grounded item in the input sequence: either a streamed leaf node such as an attribute or text node, or an atomic value, or a non-streamed element or document node injected into the sequence for example by use of the comma operator.

    - ### Methods inherited from class com.saxonica.ee.stream.feed.AbsorptionFeed

      `append, endSelectedParentNode, setHasFailed, startSelectedParentNode`

    - ### Methods inherited from class com.saxonica.ee.stream.feed.GroundedItemFeed

      `attribute, characters, comment, endDocument, endElement, namespace, processingInstruction, setUnparsedEntity, startContent, startDocument, startElement, startElement`

    - ### Methods inherited from class com.saxonica.ee.stream.feed.ItemFeed

      `append, dynamicError, getContext, getExpression, getResult, getTerminator, hasFailed, open, processItems, setExpression, setTerminator`

    - ### Methods inherited from class net.sf.saxon.event.ProxyOutputter

      `getNextOutputter, open, setLocation, usesTypeAnnotations`

    - ### Methods inherited from class net.sf.saxon.event.Outputter

      `getConfiguration, getPipelineConfiguration, getStringReceiver, getSystemId, namespaces, setPipelineConfiguration, setSystemId`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface net.sf.saxon.event.Receiver

      `handlesAppend`

- - ### Constructor Detail

    - #### StringValueFeed

          public StringValueFeed​(ItemFeed result,
                                 XPathContext context)

  - ### Method Detail

    - #### makePendingItem

          protected AbsorptionFeed.PendingItem makePendingItem​(int sequenceNr,
                                                               FleetingParentNode node)

      Description copied from class: `AbsorptionFeed`
      Create a pending item (appropriate to the subclass) containing the data needed to compute the result value for one node in the streamed input sequence
      Specified by:
        `makePendingItem` in class `AbsorptionFeed`
      Parameters:
        `sequenceNr` - the sequence number of this node within a set of nested nodes
        `node` - the streamed input node
      Returns:
        the data needed to process this node

    - #### processGroundedItem

          protected Sequence processGroundedItem​(Item item)
                                          throws XPathException

      Description copied from class: `AbsorptionFeed`
      Process a grounded item in the input sequence: either a streamed leaf node such as an attribute or text node, or an atomic value, or a non-streamed element or document node injected into the sequence for example by use of the comma operator.
      Specified by:
        `processGroundedItem` in class `AbsorptionFeed`
      Parameters:
        `item` - the grounded item
      Returns:
        the result of processing the grounded item
      Throws:
        `XPathException` - if a dynamic error occurs

    - #### close

          public void close()
                     throws XPathException

      The close() method is called immediately before the Watch is destroyed, that is, when the element whose declaration scopes the constraint implemented by this Watch goes out of scope.
      Specified by:
        `close` in interface `Receiver`
      Overrides:
        `close` in class `ItemFeed`
      Throws:
        `XPathException` - May be raised if a dynamic error occurs