org.apache.xml.dtm.ref

## Class DTMDefaultBaseIterators

- java.lang.Object
- - org.apache.xml.dtm.ref.DTMDefaultBase
  - - org.apache.xml.dtm.ref.DTMDefaultBaseTraversers
    - - org.apache.xml.dtm.ref.DTMDefaultBaseIterators

All Implemented Interfaces:
  DTM

Direct Known Subclasses:
  DOM2DTM, DTMDocument, SAX2DTM

    public abstract class DTMDefaultBaseIterators
    extends DTMDefaultBaseTraversers

This class implements the traversers for DTMDefaultBase.

### Nested Class Summary

Nested Classes
`class` `DTMDefaultBaseIterators.AncestorIterator` Iterator that returns the ancestors of a given node in document order.
`class` `DTMDefaultBaseIterators.AttributeIterator` Iterator that returns attribute nodes (of what nodes?)
`class` `DTMDefaultBaseIterators.ChildrenIterator` Iterator that returns all immediate children of a given node
`class` `DTMDefaultBaseIterators.DescendantIterator` Iterator that returns the descendants of a given node.
`class` `DTMDefaultBaseIterators.FollowingIterator` Iterator that returns following nodes of for a given node.
`class` `DTMDefaultBaseIterators.FollowingSiblingIterator` Iterator that returns all siblings of a given node.
`class` `DTMDefaultBaseIterators.InternalAxisIteratorBase` Abstract superclass defining behaviors shared by all DTMDefault's internal implementations of DTMAxisIterator.
`class` `DTMDefaultBaseIterators.NamespaceAttributeIterator` Iterator that returns attributes within a given namespace for a node.
`class` `DTMDefaultBaseIterators.NamespaceChildrenIterator` Iterator that returns children within a given namespace for a given node.
`class` `DTMDefaultBaseIterators.NamespaceIterator` Iterator that returns the namespace nodes as defined by the XPath data model for a given node.
`class` `DTMDefaultBaseIterators.NthDescendantIterator` Iterator that returns the descendants of a given node.
`class` `DTMDefaultBaseIterators.ParentIterator` Iterator that returns the parent of a given node.
`class` `DTMDefaultBaseIterators.PrecedingIterator` Iterator that returns preceding nodes of a given node.
`class` `DTMDefaultBaseIterators.PrecedingSiblingIterator` Iterator that returns preceding siblings of a given node
`class` `DTMDefaultBaseIterators.RootIterator` Iterator that returns the the root node as defined by the XPath data model for a given node.
`class` `DTMDefaultBaseIterators.SingletonIterator` Class SingletonIterator.
`class` `DTMDefaultBaseIterators.TypedAncestorIterator` Typed iterator that returns the ancestors of a given node.
`class` `DTMDefaultBaseIterators.TypedAttributeIterator` Iterator that returns attribute nodes of a given type
`class` `DTMDefaultBaseIterators.TypedChildrenIterator` Iterator that returns children of a given type for a given node.
`class` `DTMDefaultBaseIterators.TypedDescendantIterator` Typed iterator that returns the descendants of a given node.
`class` `DTMDefaultBaseIterators.TypedFollowingIterator` Iterator that returns following nodes of a given type for a given node.
`class` `DTMDefaultBaseIterators.TypedFollowingSiblingIterator` Iterator that returns all following siblings of a given node.
`class` `DTMDefaultBaseIterators.TypedNamespaceIterator` Iterator that returns the namespace nodes as defined by the XPath data model for a given node, filtered by extended type ID.
`class` `DTMDefaultBaseIterators.TypedPrecedingIterator` Iterator that returns preceding nodes of agiven type for a given node.
`class` `DTMDefaultBaseIterators.TypedPrecedingSiblingIterator` Iterator that returns preceding siblings of a given type for a given node
`class` `DTMDefaultBaseIterators.TypedRootIterator` Iterator that returns the namespace nodes as defined by the XPath data model for a given node, filtered by extended type ID.
`class` `DTMDefaultBaseIterators.TypedSingletonIterator` Iterator that returns a given node only if it is of a given type.

### Field Summary

### Fields inherited from class org.apache.xml.dtm.ref.DTMDefaultBase

`DEFAULT_BLOCKSIZE, DEFAULT_NUMBLOCKS, DEFAULT_NUMBLOCKS_SMALL, m_mgr, ROOTNODE`

### Fields inherited from interface org.apache.xml.dtm.DTM

`ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NAMESPACE_NODE, NOTATION_NODE, NTYPES, NULL, PROCESSING_INSTRUCTION_NODE, ROOT_NODE, TEXT_NODE`

### Constructor Summary

Constructors
Constructor and Description
`DTMDefaultBaseIterators(DTMManager mgr, Source source, int dtmIdentity, DTMWSFilter whiteSpaceFilter, XMLStringFactory xstringfactory, boolean doIndexing)` Construct a DTMDefaultBaseTraversers object from a DOM node.
`DTMDefaultBaseIterators(DTMManager mgr, Source source, int dtmIdentity, DTMWSFilter whiteSpaceFilter, XMLStringFactory xstringfactory, boolean doIndexing, int blocksize, boolean usePrevsib, boolean newNameTable)` Construct a DTMDefaultBaseTraversers object from a DOM node.

### Method Summary

Methods
`DTMAxisIterator` `getAxisIterator(int axis)` This is a shortcut to the iterators that implement the XPath axes.
`DTMAxisIterator` `getTypedAxisIterator(int axis, int type)` Get an iterator that can navigate over an XPath Axis, predicated by the extended type ID.

### Methods inherited from class org.apache.xml.dtm.ref.DTMDefaultBaseTraversers

`getAxisTraverser`

### Methods inherited from class org.apache.xml.dtm.ref.DTMDefaultBase

`appendChild, appendTextChild, dispatchCharactersEvents, dispatchToEvents, documentRegistration, documentRelease, dumpDTM, dumpNode, getAttributeNode, getDocument, getDocumentAllDeclarationsProcessed, getDocumentBaseURI, getDocumentEncoding, getDocumentRoot, getDocumentStandalone, getDocumentSystemIdentifier, getDocumentTypeDeclarationPublicIdentifier, getDocumentTypeDeclarationSystemIdentifier, getDocumentVersion, getDTMIDs, getElementById, getExpandedTypeID, getExpandedTypeID, getFirstAttribute, getFirstChild, getFirstNamespaceNode, getLastChild, getLevel, getLocalName, getLocalNameFromExpandedNameID, getManager, getNamespaceFromExpandedNameID, getNamespaceType, getNamespaceURI, getNextAttribute, getNextNamespaceNode, getNextSibling, getNode, getNodeHandle, getNodeIdent, getNodeName, getNodeNameX, getNodeType, getNodeValue, getOwnerDocument, getParent, getPrefix, getPreviousSibling, getStringValue, getStringValueChunk, getStringValueChunkCount, getTypedFirstChild, getTypedNextSibling, getUnparsedEntityURI, hasChildNodes, isAttributeSpecified, isCharacterElementContentWhitespace, isDocumentAllDeclarationsProcessed, isNodeAfter, isSupported, makeNodeHandle, makeNodeIdentity, migrateTo, setDocumentBaseURI, setFeature, supportsPreStripping`

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

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

### Methods inherited from interface org.apache.xml.dtm.DTM

`getContentHandler, getDeclHandler, getDTDHandler, getEntityResolver, getErrorHandler, getLexicalHandler, getSourceLocatorFor, needsTwoThreads, setProperty`

### Constructor Detail

#### DTMDefaultBaseIterators

    public DTMDefaultBaseIterators(DTMManager mgr,
                           Source source,
                           int dtmIdentity,
                           DTMWSFilter whiteSpaceFilter,
                           XMLStringFactory xstringfactory,
                           boolean doIndexing)

Construct a DTMDefaultBaseTraversers object from a DOM node.

Parameters:
  `mgr` - The DTMManager who owns this DTM.
  `source` - The object that is used to specify the construction source.
  `dtmIdentity` - The DTM identity ID for this DTM.
  `whiteSpaceFilter` - The white space filter for this DTM, which may be null.
  `xstringfactory` - The factory to use for creating XMLStrings.
  `doIndexing` - true if the caller considers it worth it to use indexing schemes.

#### DTMDefaultBaseIterators

    public DTMDefaultBaseIterators(DTMManager mgr,
                           Source source,
                           int dtmIdentity,
                           DTMWSFilter whiteSpaceFilter,
                           XMLStringFactory xstringfactory,
                           boolean doIndexing,
                           int blocksize,
                           boolean usePrevsib,
                           boolean newNameTable)

Construct a DTMDefaultBaseTraversers object from a DOM node.

Parameters:
  `mgr` - The DTMManager who owns this DTM.
  `source` - The object that is used to specify the construction source.
  `dtmIdentity` - The DTM identity ID for this DTM.
  `whiteSpaceFilter` - The white space filter for this DTM, which may be null.
  `xstringfactory` - The factory to use for creating XMLStrings.
  `doIndexing` - true if the caller considers it worth it to use indexing schemes.
  `blocksize` - The block size of the DTM.
  `usePrevsib` - true if we want to build the previous sibling node array.
  `newNameTable` - true if we want to use a new ExpandedNameTable for this DTM.

### Method Detail

#### getTypedAxisIterator

    public DTMAxisIterator getTypedAxisIterator(int axis,
                                       int type)

Get an iterator that can navigate over an XPath Axis, predicated by the extended type ID. Returns an iterator that must be initialized with a start node (using iterator.setStartNode()).

Parameters:
  `axis` - One of Axes.ANCESTORORSELF, etc.
  `type` - An extended type ID.
Returns:
  A DTMAxisIterator, or null if the given axis isn't supported.

#### getAxisIterator

    public DTMAxisIterator getAxisIterator(int axis)

This is a shortcut to the iterators that implement the XPath axes. Returns a bare-bones iterator that must be initialized with a start node (using iterator.setStartNode()).

Parameters:
  `axis` - One of Axes.ANCESTORORSELF, etc.
Returns:
  A DTMAxisIterator, or null if the given axis isn't supported.