Package com.saxonica.ee.stream.om

## Class FleetingElementNode

- java.lang.Object
- - com.saxonica.ee.stream.om.FleetingNode
  - - com.saxonica.ee.stream.om.FleetingParentNode
    - - com.saxonica.ee.stream.om.FleetingElementNode

- All Implemented Interfaces:
    `javax.xml.transform.Source`, `javax.xml.transform.SourceLocator`, `GroundedValue`, `Item`, `NodeInfo`, `Sequence`, `Location`, `org.xml.sax.Locator`

      public class FleetingElementNode
      extends FleetingParentNode

  Represents an element node available transiently within a streamed document

- - ### Field Summary

    - ### Fields inherited from class com.saxonica.ee.stream.om.FleetingNode

      `root`

    - ### Fields inherited from interface net.sf.saxon.om.NodeInfo

      `IS_DTD_TYPE, IS_NILLED`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `FleetingElementNode​(NodeName name, SchemaType type)` |
    `FleetingElementNode​(NodeName name, SchemaType type, AttributeMap attributes, NamespaceMap namespaces)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | `compareAttributeOrder​(NodeName one, NodeName two)` |
    `void` | `copy​(Receiver out, int copyOptions, Location locationId)` | Copy this node to a given Receiver.
    `NamespaceMap` | `getAllNamespaces()` | Get all the namespace bindings that are in-scope for this element.
    `int` | `getAttributeIndex​(java.lang.String uri, java.lang.String local)` | Get the index position of an attribute with given local name and fingerprint
    `AttributeMap` | `getAttributes()` | Get the attributes defined on this element
    `java.lang.String` | `getAttributeValue​(java.lang.String uri, java.lang.String local)` | Get the string value of a given attribute of this node
    `NamespaceMap` | `getInScopeNamespaces()` | Get all in-scope namespaces defined on this element.
    `int` | `getNamespaceNodeIndex​(java.lang.String prefix)` | Get the index position of a namespace node with given local name (=prefix
    `AxisIterator` | `iterateAxis​(int axisNumber, java.util.function.Predicate<? super NodeInfo> nodeTest)` | Return an iteration over all the nodes reached by the given axis from this node that match a given NodeTest
    `void` | `notify​(Receiver out)` | Notify the event to a Receiver
    `void` | `setAttributes​(AttributeMap attributes)` | Set the attributes that appear on this element
    `void` | `setNamespaceMap​(NamespaceMap namespaces)` | Set the in-scope namespaces for this element

    - ### Methods inherited from class com.saxonica.ee.stream.om.FleetingParentNode

      `hasChildNodes, setHasChildren`

    - ### Methods inherited from class com.saxonica.ee.stream.om.FleetingNode

      `atomize, compareOrder, equals, generateId, getBaseURI, getConfiguration, getDeclaredNamespaces, getDepth, getDisplayName, getFingerprint, getLocalPart, getNamePool, getNodeKind, getNodeName, getNodeNumber, getParent, getPrefix, getRoot, getSchemaType, getStringValue, getStringValueCS, getSystemId, getTreeInfo, getURI, hasFingerprint, head, isStreamed, saveLocation, setNodeKind, setNodeName, setParent, setStringValue, setSystemId, setTypeAnnotation`

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

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

    - ### Methods inherited from interface net.sf.saxon.om.GroundedValue

      `asIterable, concatenate, containsNode, effectiveBooleanValue, materialize`

    - ### Methods inherited from interface net.sf.saxon.om.Item

      `getLength, itemAt, iterate, reduce, subsequence`

    - ### Methods inherited from interface net.sf.saxon.om.NodeInfo

      `attributes, children, children, getColumnNumber, getGenre, getLineNumber, getPublicId, hashCode, isId, isIdref, isNilled, isSameNodeInfo, iterateAxis, toShortString`

    - ### Methods inherited from interface net.sf.saxon.om.Sequence

      `makeRepeatable`

    - ### Methods inherited from interface javax.xml.transform.Source

      `isEmpty`

- - ### Constructor Detail

    - #### FleetingElementNode

          public FleetingElementNode​(NodeName name,
                                     SchemaType type)

    - #### FleetingElementNode

          public FleetingElementNode​(NodeName name,
                                     SchemaType type,
                                     AttributeMap attributes,
                                     NamespaceMap namespaces)

  - ### Method Detail

    - #### setNamespaceMap

          public void setNamespaceMap​(NamespaceMap namespaces)

      Set the in-scope namespaces for this element
      Parameters:
        `namespaces` - the in-scope namespaces. This includes all namespace bindings that are in scope, not just the local namespace declarations

    - #### getAllNamespaces

          public NamespaceMap getAllNamespaces()

      Description copied from class: `FleetingNode`
      Get all the namespace bindings that are in-scope for this element.

      For an element return all the prefix-to-uri bindings that are in scope. This may include a binding to the default namespace (represented by a prefix of ""). It will never include "undeclarations" - that is, the namespace URI will never be empty; the effect of an undeclaration is to remove a binding from the in-scope namespaces, not to add anything.

      For a node other than an element, returns null.

      Specified by:
        `getAllNamespaces` in interface `NodeInfo`
      Overrides:
        `getAllNamespaces` in class `FleetingNode`
      Returns:
        the in-scope namespaces for an element, or null for any other kind of node.

    - #### setAttributes

          public void setAttributes​(AttributeMap attributes)

      Set the attributes that appear on this element
      Parameters:
        `attributes` - the element's attributes

    - #### copy

          public void copy​(Receiver out,
                           int copyOptions,
                           Location locationId)
                    throws XPathException

      Copy this node to a given Receiver.

      This method is primarily for internal use. It should not be considered a stable part of the Saxon API.

      Parameters:
        `out` - the Receiver to which the node should be copied. It is the caller's responsibility to ensure that this Receiver is open before the method is called (or that it is self-opening), and that it is closed after use.
        `copyOptions` - a selection of the options defined in `CopyOptions`
        `locationId` - If non-zero, identifies the location of the instruction that requested this copy. If zero, indicates that the location information for the original node is to be copied; in this case the Receiver must be
      Throws:
        `java.lang.UnsupportedOperationException` - (always)
        `XPathException` - if any downstream error occurs

    - #### iterateAxis

          public AxisIterator iterateAxis​(int axisNumber,
                                          java.util.function.Predicate<? super NodeInfo> nodeTest)

      Return an iteration over all the nodes reached by the given axis from this node that match a given NodeTest
      Specified by:
        `iterateAxis` in interface `NodeInfo`
      Overrides:
        `iterateAxis` in class `FleetingNode`
      Parameters:
        `axisNumber` - an integer identifying the axis; one of the constants defined in class `AxisInfo`
        `nodeTest` - A condition to be satisfied by the returned nodes; nodes that do not satisfy this condition are not included in the result
      Returns:
        an AxisIterator that delivers the nodes reached by the axis in turn. The nodes are returned in axis order (document order for a forwards axis, reverse document order for a reverse axis).
      Throws:
        `java.lang.UnsupportedOperationException` - if the namespace axis is requested and this axis is not supported for this implementation.
      Since:
        8.4
      See Also:
        `AxisInfo`

    - #### getAttributes

          public AttributeMap getAttributes()

      Get the attributes defined on this element
      Returns:
        the attributes in the form of an AttributeCollection

    - #### getInScopeNamespaces

          public NamespaceMap getInScopeNamespaces()

      Get all in-scope namespaces defined on this element.
      Overrides:
        `getInScopeNamespaces` in class `FleetingNode`
      Returns:
        a `NamespaceMap` containing all the in-scope namespaces for an element (not just those declared locally on the element itself). Returns null if the node is not an element.

    - #### getAttributeValue

          public java.lang.String getAttributeValue​(java.lang.String uri,
                                                    java.lang.String local)

      Get the string value of a given attribute of this node
      Specified by:
        `getAttributeValue` in interface `NodeInfo`
      Overrides:
        `getAttributeValue` in class `FleetingNode`
      Parameters:
        `uri` - the namespace URI of the attribute name. Supply the empty string for an attribute that is in no namespace
        `local` - the local part of the attribute name.
      Returns:
        the attribute value if it exists, or null if it does not exist. Always returns null if this node is not an element.
      Since:
        9.4

    - #### getAttributeIndex

          public int getAttributeIndex​(java.lang.String uri,
                                       java.lang.String local)

      Get the index position of an attribute with given local name and fingerprint

    - #### compareAttributeOrder

          public int compareAttributeOrder​(NodeName one,
                                           NodeName two)

    - #### getNamespaceNodeIndex

          public int getNamespaceNodeIndex​(java.lang.String prefix)

      Get the index position of a namespace node with given local name (=prefix

    - #### notify

          public void notify​(Receiver out)
                      throws XPathException

      Notify the event to a Receiver
      Specified by:
        `notify` in class `FleetingParentNode`
      Parameters:
        `out` - the receiver to be notified
      Throws:
        `XPathException`