Class DTMDocument
- java.lang.Object
-
- org.apache.xml.dtm.ref.DTMDefaultBase
-
- org.apache.xml.dtm.ref.DTMDefaultBaseTraversers
-
- org.apache.xml.dtm.ref.DTMDefaultBaseIterators
-
- org.apache.xalan.lib.sql.DTMDocument
-
- All Implemented Interfaces:
DTM
- Direct Known Subclasses:
SQLDocument,SQLErrorDocument
public class DTMDocument extends DTMDefaultBaseIterators
The SQL Document is the main controlling class the executesa SQL Query
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceDTMDocument.CharacterNodeHandler-
Nested classes/interfaces inherited from class org.apache.xml.dtm.ref.DTMDefaultBaseIterators
DTMDefaultBaseIterators.AncestorIterator, DTMDefaultBaseIterators.AttributeIterator, DTMDefaultBaseIterators.ChildrenIterator, DTMDefaultBaseIterators.DescendantIterator, DTMDefaultBaseIterators.FollowingIterator, DTMDefaultBaseIterators.FollowingSiblingIterator, DTMDefaultBaseIterators.InternalAxisIteratorBase, DTMDefaultBaseIterators.NamespaceAttributeIterator, DTMDefaultBaseIterators.NamespaceChildrenIterator, DTMDefaultBaseIterators.NamespaceIterator, DTMDefaultBaseIterators.NthDescendantIterator, DTMDefaultBaseIterators.ParentIterator, DTMDefaultBaseIterators.PrecedingIterator, DTMDefaultBaseIterators.PrecedingSiblingIterator, DTMDefaultBaseIterators.RootIterator, DTMDefaultBaseIterators.SingletonIterator, DTMDefaultBaseIterators.TypedAncestorIterator, DTMDefaultBaseIterators.TypedAttributeIterator, DTMDefaultBaseIterators.TypedChildrenIterator, DTMDefaultBaseIterators.TypedDescendantIterator, DTMDefaultBaseIterators.TypedFollowingIterator, DTMDefaultBaseIterators.TypedFollowingSiblingIterator, DTMDefaultBaseIterators.TypedNamespaceIterator, DTMDefaultBaseIterators.TypedPrecedingIterator, DTMDefaultBaseIterators.TypedPrecedingSiblingIterator, DTMDefaultBaseIterators.TypedRootIterator, DTMDefaultBaseIterators.TypedSingletonIterator
-
-
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 Description DTMDocument(DTMManager mgr, int ident)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidappendChild(int parm1, boolean parm2, boolean parm3)Append a child to the end of the document.voidappendTextChild(java.lang.String parm1)Append a text node child that will be constructed from a string, to the end of the document.voiddispatchCharactersEvents(int nodeHandle, org.xml.sax.ContentHandler ch, boolean normalize)Directly call the characters method on the passed ContentHandler for the string-value of the given node (see http://www.w3.org/TR/xpath#data-model for the definition of a node's string-value).voiddispatchToEvents(int parm1, org.xml.sax.ContentHandler parm2)Directly create SAX parser events from a subtree.voiddumpDTM()intgetAttributeNode(int parm1, java.lang.String parm2, java.lang.String parm3)Retrieves an attribute node by by qualified name and namespace URI.DTMAxisIteratorgetAxisIterator(int parm1)This is a shortcut to the iterators that implement the XPath axes.DTMAxisTraversergetAxisTraverser(int parm1)This returns a stateless "traverser", that can navigate over an XPath axis, though perhaps not in document order.org.xml.sax.ContentHandlergetContentHandler()Return this DTM's content handler, if it has one.org.xml.sax.ext.DeclHandlergetDeclHandler()Return this DTM's DeclHandler, if it has one.intgetDocument()Find the Document node handle for the document currently under construction.booleangetDocumentAllDeclarationsProcessed()Return an indication of whether the processor has read the complete DTD.java.lang.StringgetDocumentBaseURI()Return the base URI of the document entity.java.lang.StringgetDocumentEncoding(int parm1)Return the name of the character encoding scheme in which the document entity is expressed.java.lang.StringgetDocumentStandalone(int parm1)Return an indication of the standalone status of the document, either "yes" or "no".java.lang.StringgetDocumentSystemIdentifier(int parm1)Return the system identifier of the document entity.java.lang.StringgetDocumentTypeDeclarationPublicIdentifier()Return the public identifier of the external subset, normalized as described in 4.2.2 External Entities [XML].java.lang.StringgetDocumentTypeDeclarationSystemIdentifier()A document type declaration information item has the following properties: 1.java.lang.StringgetDocumentVersion(int parm1)Return a string representing the XML version of the document.org.xml.sax.DTDHandlergetDTDHandler()Return this DTM's DTDHandler, if it has one.intgetElementById(java.lang.String parm1)Returns theElementwhoseIDis given byelementId.org.xml.sax.EntityResolvergetEntityResolver()Return this DTM's EntityResolver, if it has one.org.xml.sax.ErrorHandlergetErrorHandler()Return this DTM's ErrorHandler, if it has one.intgetExpandedTypeID(int parm1)Given a node handle, return an ID that represents the node's expanded name.intgetExpandedTypeID(java.lang.String parm1, java.lang.String parm2, int parm3)Given an expanded name, return an ID.intgetFirstAttribute(int parm1)Given a node handle, get the index of the node's first attribute.intgetFirstChild(int parm1)Given a node handle, get the handle of the node's first child.intgetFirstNamespaceNode(int parm1, boolean parm2)Given a node handle, get the index of the node's first child.intgetLastChild(int parm1)Given a node handle, advance to its last child.shortgetLevel(int parm1)Get the depth level of this node in the tree (equals 1 for a parentless node).org.xml.sax.ext.LexicalHandlergetLexicalHandler()Return this DTM's lexical handler, if it has one.java.lang.StringgetLocalName(int parm1)Given a node handle, return its XPath-style localname.java.lang.StringgetLocalNameFromExpandedNameID(int parm1)Given an expanded-name ID, return the local name part.java.lang.StringgetNamespaceFromExpandedNameID(int parm1)Given an expanded-name ID, return the namespace URI part.intgetNamespaceType(int parm1)Returns the namespace type of a specific nodejava.lang.StringgetNamespaceURI(int parm1)Given a node handle, return its DOM-style namespace URI (As defined in Namespaces, this is the declared URI which this node's prefix -- or default in lieu thereof -- was mapped to.)intgetNextAttribute(int parm1)Given a node handle, advance to the next attribute.intgetNextNamespaceNode(int parm1, int parm2, boolean parm3)Given a namespace handle, advance to the next namespace.intgetNextSibling(int parm1)Given a node handle, advance to its next sibling.org.w3c.dom.NodegetNode(int parm1)Return an DOM node for the given node.java.lang.StringgetNodeName(int parm1)Given a node handle, return its DOM-style node name.java.lang.StringgetNodeNameX(int parm1)Given a node handle, return the XPath node name.shortgetNodeType(int parm1)Given a node handle, return its DOM-style node type.java.lang.StringgetNodeValue(int parm1)Given a node handle, return its node value.intgetOwnerDocument(int parm1)Given a node handle, find the owning document node.intgetParent(int parm1)Given a node handle, find its parent node.java.lang.StringgetPrefix(int parm1)Given a namespace handle, return the prefix that the namespace decl is mapping.intgetPreviousSibling(int parm1)Given a node handle, find its preceeding sibling.javax.xml.transform.SourceLocatorgetSourceLocatorFor(int node)No source information is available for DOM2DTM, so returnnullhere.XMLStringgetStringValue(int nodeHandle)Get the string-value of a node as a String object (see http://www.w3.org/TR/xpath#data-model for the definition of a node's string-value).char[]getStringValueChunk(int parm1, int parm2, int[] parm3)Get a character array chunk in the string-value of a node.intgetStringValueChunkCount(int parm1)Get number of character array chunks in the string-value of a node.DTMAxisIteratorgetTypedAxisIterator(int parm1, int parm2)Get an iterator that can navigate over an XPath Axis, predicated by the extended type ID.java.lang.StringgetUnparsedEntityURI(java.lang.String parm1)The getUnparsedEntityURI function returns the URI of the unparsed entity with the specified name in the same document as the context node (see [3.3 Unparsed Entities]).booleanhasChildNodes(int parm1)Given a node handle, test if it has child nodes.booleanisAttributeSpecified(int parm1)5.booleanisCharacterElementContentWhitespace(int parm1)2.booleanisDocumentAllDeclarationsProcessed(int parm1)10.booleanisNodeAfter(int parm1, int parm2)Figure out whether nodeHandle2 should be considered as being later in the document than nodeHandle1, in Document Order as defined by the XPath model.booleanisSupported(java.lang.String parm1, java.lang.String parm2)Tests whether DTM DOM implementation implements a specific feature and that feature is supported by this node.booleanneedsTwoThreads()voidsetDocumentBaseURI(java.lang.String parm1)Set the base URI of the document entity.voidsetFeature(java.lang.String parm1, boolean parm2)Set an implementation dependent feature.voidsetProperty(java.lang.String property, java.lang.Object value)For the moment all the run time properties are ignored by this class.booleansupportsPreStripping()Event overriding for Debug-
Methods inherited from class org.apache.xml.dtm.ref.DTMDefaultBase
documentRegistration, documentRelease, dumpDTM, dumpNode, getDocumentRoot, getDTMIDs, getManager, getNodeHandle, getNodeIdent, getTypedFirstChild, getTypedNextSibling, makeNodeHandle, makeNodeIdentity, migrateTo
-
-
-
-
Constructor Detail
-
DTMDocument
public DTMDocument(DTMManager mgr, int ident)
- Parameters:
mgr-ident-
-
-
Method Detail
-
getFirstAttribute
public int getFirstAttribute(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, get the index of the node's first attribute.- Specified by:
getFirstAttributein interfaceDTM- Overrides:
getFirstAttributein classDTMDefaultBase- Parameters:
parm1-- Returns:
- Handle of first attribute, or DTM.NULL to indicate none exists.
-
getNodeValue
public java.lang.String getNodeValue(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, return its node value. This is mostly as defined by the DOM, but may ignore some conveniences.- Specified by:
getNodeValuein interfaceDTM- Specified by:
getNodeValuein classDTMDefaultBase- Parameters:
parm1-- Returns:
- String Value of this node, or null if not meaningful for this node type.
-
getStringValue
public XMLString getStringValue(int nodeHandle)
Get the string-value of a node as a String object (see http://www.w3.org/TR/xpath#data-model for the definition of a node's string-value).- Specified by:
getStringValuein interfaceDTM- Specified by:
getStringValuein classDTMDefaultBase- Parameters:
nodeHandle- The node ID.- Returns:
- A string object that represents the string-value of the given node.
-
getNextAttribute
public int getNextAttribute(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, advance to the next attribute. If an attr, we advance to the next attr on the same node. If not an attribute, we return NULL.- Specified by:
getNextAttributein interfaceDTM- Overrides:
getNextAttributein classDTMDefaultBase- Parameters:
parm1-- Returns:
- int DTM node-number of the resolved attr, or DTM.NULL to indicate none exists.
-
dumpDTM
public void dumpDTM()
-
setProperty
public void setProperty(java.lang.String property, java.lang.Object value)For the moment all the run time properties are ignored by this class.- Parameters:
property- aStringvaluevalue- anObjectvalue
-
getSourceLocatorFor
public javax.xml.transform.SourceLocator getSourceLocatorFor(int node)
No source information is available for DOM2DTM, so returnnullhere.- Parameters:
node- anintvalue- Returns:
- null
-
getAttributeNode
public int getAttributeNode(int parm1, java.lang.String parm2, java.lang.String parm3)Description copied from class:DTMDefaultBaseRetrieves an attribute node by by qualified name and namespace URI.- Specified by:
getAttributeNodein interfaceDTM- Specified by:
getAttributeNodein classDTMDefaultBase- Parameters:
parm1-parm2-parm3-- Returns:
- The attribute node handle with the specified name (
nodeName) orDTM.NULLif there is no such attribute.
-
getLocalName
public java.lang.String getLocalName(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, return its XPath-style localname. (As defined in Namespaces, this is the portion of the name after any colon character).- Specified by:
getLocalNamein interfaceDTM- Specified by:
getLocalNamein classDTMDefaultBase- Parameters:
parm1-- Returns:
- String Local name of this node.
-
getNodeName
public java.lang.String getNodeName(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, return its DOM-style node name. This will include names such as #text or #document.- Specified by:
getNodeNamein interfaceDTM- Specified by:
getNodeNamein classDTMDefaultBase- Parameters:
parm1-- Returns:
- String Name of this node, which may be an empty string. %REVIEW% Document when empty string is possible... %REVIEW-COMMENT% It should never be empty, should it?
-
isAttributeSpecified
public boolean isAttributeSpecified(int parm1)
Description copied from class:DTMDefaultBase5. [specified] A flag indicating whether this attribute was actually specified in the start-tag of its element, or was defaulted from the DTD.- Specified by:
isAttributeSpecifiedin interfaceDTM- Specified by:
isAttributeSpecifiedin classDTMDefaultBase- Parameters:
parm1-- Returns:
trueif the attribute was specified;falseif it was defaulted.
-
getUnparsedEntityURI
public java.lang.String getUnparsedEntityURI(java.lang.String parm1)
Description copied from class:DTMDefaultBaseThe getUnparsedEntityURI function returns the URI of the unparsed entity with the specified name in the same document as the context node (see [3.3 Unparsed Entities]). It returns the empty string if there is no such entity.XML processors may choose to use the System Identifier (if one is provided) to resolve the entity, rather than the URI in the Public Identifier. The details are dependent on the processor, and we would have to support some form of plug-in resolver to handle this properly. Currently, we simply return the System Identifier if present, and hope that it a usable URI or that our caller can map it to one. TODO: Resolve Public Identifiers... or consider changing function name.
If we find a relative URI reference, XML expects it to be resolved in terms of the base URI of the document. The DOM doesn't do that for us, and it isn't entirely clear whether that should be done here; currently that's pushed up to a higher level of our application. (Note that DOM Level 1 didn't store the document's base URI.) TODO: Consider resolving Relative URIs.
(The DOM's statement that "An XML processor may choose to completely expand entities before the structure model is passed to the DOM" refers only to parsed entities, not unparsed, and hence doesn't affect this function.)
- Specified by:
getUnparsedEntityURIin interfaceDTM- Specified by:
getUnparsedEntityURIin classDTMDefaultBase- Parameters:
parm1-- Returns:
- String containing the URI of the Unparsed Entity, or an empty string if no such entity exists.
-
getDTDHandler
public org.xml.sax.DTDHandler getDTDHandler()
Description copied from interface:DTMReturn this DTM's DTDHandler, if it has one.- Returns:
- null if this model doesn't respond to SAX dtd events.
-
getPrefix
public java.lang.String getPrefix(int parm1)
Description copied from class:DTMDefaultBaseGiven a namespace handle, return the prefix that the namespace decl is mapping. Given a node handle, return the prefix used to map to the namespace.%REVIEW% Are you sure you want "" for no prefix?
%REVIEW-COMMENT% I think so... not totally sure. -sb
- Specified by:
getPrefixin interfaceDTM- Specified by:
getPrefixin classDTMDefaultBase- Parameters:
parm1-- Returns:
- String prefix of this node's name, or "" if no explicit namespace prefix was given.
-
getEntityResolver
public org.xml.sax.EntityResolver getEntityResolver()
Description copied from interface:DTMReturn this DTM's EntityResolver, if it has one.- Returns:
- null if this model doesn't respond to SAX entity ref events.
-
getDocumentTypeDeclarationPublicIdentifier
public java.lang.String getDocumentTypeDeclarationPublicIdentifier()
Description copied from class:DTMDefaultBaseReturn the public identifier of the external subset, normalized as described in 4.2.2 External Entities [XML]. If there is no external subset or if it has no public identifier, this property has no value.- Specified by:
getDocumentTypeDeclarationPublicIdentifierin interfaceDTM- Specified by:
getDocumentTypeDeclarationPublicIdentifierin classDTMDefaultBase- Returns:
- the public identifier String object, or null if there is none.
-
getLexicalHandler
public org.xml.sax.ext.LexicalHandler getLexicalHandler()
Description copied from interface:DTMReturn this DTM's lexical handler, if it has one. %REVIEW% Should this return null if constrution already done/begun?- Returns:
- null if this model doesn't respond to lexical SAX events.
-
needsTwoThreads
public boolean needsTwoThreads()
- Returns:
- true iff we're building this model incrementally (eg we're partnered with a CoroutineParser) and thus require that the transformation and the parse run simultaneously. Guidance to the DTMManager.
-
getContentHandler
public org.xml.sax.ContentHandler getContentHandler()
Description copied from interface:DTMReturn this DTM's content handler, if it has one.- Returns:
- null if this model doesn't respond to SAX events.
-
dispatchToEvents
public void dispatchToEvents(int parm1, org.xml.sax.ContentHandler parm2) throws org.xml.sax.SAXExceptionDescription copied from class:DTMDefaultBaseDirectly create SAX parser events from a subtree.- Specified by:
dispatchToEventsin interfaceDTM- Specified by:
dispatchToEventsin classDTMDefaultBase- Parameters:
parm1-parm2-- Throws:
org.xml.sax.SAXException
-
getNamespaceURI
public java.lang.String getNamespaceURI(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, return its DOM-style namespace URI (As defined in Namespaces, this is the declared URI which this node's prefix -- or default in lieu thereof -- was mapped to.)%REVIEW% Null or ""? -sb
- Specified by:
getNamespaceURIin interfaceDTM- Specified by:
getNamespaceURIin classDTMDefaultBase- Parameters:
parm1-- Returns:
- String URI value of this node's namespace, or null if no namespace was resolved.
-
dispatchCharactersEvents
public void dispatchCharactersEvents(int nodeHandle, org.xml.sax.ContentHandler ch, boolean normalize) throws org.xml.sax.SAXExceptionDescription copied from class:DTMDefaultBaseDirectly call the characters method on the passed ContentHandler for the string-value of the given node (see http://www.w3.org/TR/xpath#data-model for the definition of a node's string-value). Multiple calls to the ContentHandler's characters methods may well occur for a single call to this method.- Specified by:
dispatchCharactersEventsin interfaceDTM- Specified by:
dispatchCharactersEventsin classDTMDefaultBase- Parameters:
nodeHandle-ch-normalize-- Throws:
org.xml.sax.SAXException
-
supportsPreStripping
public boolean supportsPreStripping()
Event overriding for Debug- Specified by:
supportsPreStrippingin interfaceDTM- Overrides:
supportsPreStrippingin classDTMDefaultBase- Returns:
- true if this DTM supports prestripping.
-
getNode
public org.w3c.dom.Node getNode(int parm1)
Description copied from class:DTMDefaultBaseReturn an DOM node for the given node.- Specified by:
getNodein interfaceDTM- Overrides:
getNodein classDTMDefaultBase- Parameters:
parm1-- Returns:
- A node representation of the DTM node.
-
getPreviousSibling
public int getPreviousSibling(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, find its preceeding sibling. WARNING: DTM is asymmetric; this operation is resolved by search, and is relatively expensive.- Specified by:
getPreviousSiblingin interfaceDTM- Overrides:
getPreviousSiblingin classDTMDefaultBase- Parameters:
parm1-- Returns:
- int Node-number of the previous sib, or DTM.NULL to indicate none exists.
-
getDocumentStandalone
public java.lang.String getDocumentStandalone(int parm1)
Description copied from class:DTMDefaultBaseReturn an indication of the standalone status of the document, either "yes" or "no". This property is derived from the optional standalone document declaration in the XML declaration at the beginning of the document entity, and has no value if there is no standalone document declaration.- Specified by:
getDocumentStandalonein interfaceDTM- Overrides:
getDocumentStandalonein classDTMDefaultBase- Parameters:
parm1-- Returns:
- the document standalone String object, either "yes", "no", or null.
-
getNodeNameX
public java.lang.String getNodeNameX(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, return the XPath node name. This should be the name as described by the XPath data model, NOT the DOM-style name.- Specified by:
getNodeNameXin interfaceDTM- Overrides:
getNodeNameXin classDTMDefaultBase- Parameters:
parm1-- Returns:
- String Name of this node, which may be an empty string.
-
setFeature
public void setFeature(java.lang.String parm1, boolean parm2)Description copied from class:DTMDefaultBaseSet an implementation dependent feature.%REVIEW% Do we really expect to set features on DTMs?
- Specified by:
setFeaturein interfaceDTM- Overrides:
setFeaturein classDTMDefaultBase- Parameters:
parm1-parm2-
-
isNodeAfter
public boolean isNodeAfter(int parm1, int parm2)Description copied from class:DTMDefaultBaseFigure out whether nodeHandle2 should be considered as being later in the document than nodeHandle1, in Document Order as defined by the XPath model. This may not agree with the ordering defined by other XML applications.There are some cases where ordering isn't defined, and neither are the results of this function -- though we'll generally return false.
- Specified by:
isNodeAfterin interfaceDTM- Overrides:
isNodeAfterin classDTMDefaultBase- Parameters:
parm1-parm2-- Returns:
- true if node1 comes before node2, otherwise return false.
You can think of this as
(node1.documentOrderPosition <= node2.documentOrderPosition).
-
getNamespaceType
public int getNamespaceType(int parm1)
Description copied from class:DTMDefaultBaseReturns the namespace type of a specific node- Overrides:
getNamespaceTypein classDTMDefaultBase- Parameters:
parm1-- Returns:
- the ID of the namespace.
-
getDocumentVersion
public java.lang.String getDocumentVersion(int parm1)
Description copied from class:DTMDefaultBaseReturn a string representing the XML version of the document. This property is derived from the XML declaration optionally present at the beginning of the document entity, and has no value if there is no XML declaration.- Specified by:
getDocumentVersionin interfaceDTM- Overrides:
getDocumentVersionin classDTMDefaultBase- Parameters:
parm1-- Returns:
- the document version String object.
-
isSupported
public boolean isSupported(java.lang.String parm1, java.lang.String parm2)Description copied from class:DTMDefaultBaseTests whether DTM DOM implementation implements a specific feature and that feature is supported by this node.- Specified by:
isSupportedin interfaceDTM- Overrides:
isSupportedin classDTMDefaultBase- Parameters:
parm1-parm2-- Returns:
- Returns
trueif the specified feature is supported on this node,falseotherwise.
-
getDocumentEncoding
public java.lang.String getDocumentEncoding(int parm1)
Description copied from class:DTMDefaultBaseReturn the name of the character encoding scheme in which the document entity is expressed.- Specified by:
getDocumentEncodingin interfaceDTM- Overrides:
getDocumentEncodingin classDTMDefaultBase- Parameters:
parm1-- Returns:
- the document encoding String object.
-
appendChild
public void appendChild(int parm1, boolean parm2, boolean parm3)Description copied from class:DTMDefaultBaseAppend a child to the end of the document. Please note that the node is always cloned if it is owned by another document.%REVIEW% "End of the document" needs to be defined more clearly. Does it become the last child of the Document? Of the root element?
- Specified by:
appendChildin interfaceDTM- Overrides:
appendChildin classDTMDefaultBase- Parameters:
parm1-parm2-parm3-
-
getLevel
public short getLevel(int parm1)
Description copied from class:DTMDefaultBaseGet the depth level of this node in the tree (equals 1 for a parentless node).- Specified by:
getLevelin interfaceDTM- Overrides:
getLevelin classDTMDefaultBase- Parameters:
parm1-- Returns:
- the number of ancestors, plus one
-
getDocumentBaseURI
public java.lang.String getDocumentBaseURI()
Description copied from class:DTMDefaultBaseReturn the base URI of the document entity. If it is not known (because the document was parsed from a socket connection or from standard input, for example), the value of this property is unknown.- Specified by:
getDocumentBaseURIin interfaceDTM- Overrides:
getDocumentBaseURIin classDTMDefaultBase- Returns:
- the document base URI String object or null if unknown.
-
getNextNamespaceNode
public int getNextNamespaceNode(int parm1, int parm2, boolean parm3)Description copied from class:DTMDefaultBaseGiven a namespace handle, advance to the next namespace.- Specified by:
getNextNamespaceNodein interfaceDTM- Overrides:
getNextNamespaceNodein classDTMDefaultBase- Parameters:
parm1-parm2-parm3-- Returns:
- handle of next namespace, or DTM.NULL to indicate none exists.
-
appendTextChild
public void appendTextChild(java.lang.String parm1)
Description copied from class:DTMDefaultBaseAppend a text node child that will be constructed from a string, to the end of the document.%REVIEW% "End of the document" needs to be defined more clearly. Does it become the last child of the Document? Of the root element?
- Specified by:
appendTextChildin interfaceDTM- Overrides:
appendTextChildin classDTMDefaultBase- Parameters:
parm1-
-
getFirstNamespaceNode
public int getFirstNamespaceNode(int parm1, boolean parm2)Description copied from class:DTMDefaultBaseGiven a node handle, get the index of the node's first child. If not yet resolved, waits for more nodes to be added to the document and tries again- Specified by:
getFirstNamespaceNodein interfaceDTM- Overrides:
getFirstNamespaceNodein classDTMDefaultBase- Parameters:
parm1-parm2-- Returns:
- handle of first namespace, or DTM.NULL to indicate none exists.
-
getStringValueChunkCount
public int getStringValueChunkCount(int parm1)
Description copied from class:DTMDefaultBaseGet number of character array chunks in the string-value of a node. (see http://www.w3.org/TR/xpath#data-model for the definition of a node's string-value). Note that a single text node may have multiple text chunks.- Specified by:
getStringValueChunkCountin interfaceDTM- Overrides:
getStringValueChunkCountin classDTMDefaultBase- Parameters:
parm1-- Returns:
- number of character array chunks in the string-value of a node.
-
getLastChild
public int getLastChild(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, advance to its last child. If not yet resolved, waits for more nodes to be added to the document and tries again.- Specified by:
getLastChildin interfaceDTM- Overrides:
getLastChildin classDTMDefaultBase- Parameters:
parm1-- Returns:
- int Node-number of last child, or DTM.NULL to indicate none exists.
-
hasChildNodes
public boolean hasChildNodes(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, test if it has child nodes.%REVIEW% This is obviously useful at the DOM layer, where it would permit testing this without having to create a proxy node. It's less useful in the DTM API, where (dtm.getFirstChild(nodeHandle)!=DTM.NULL) is just as fast and almost as self-evident. But it's a convenience, and eases porting of DOM code to DTM.
- Specified by:
hasChildNodesin interfaceDTM- Overrides:
hasChildNodesin classDTMDefaultBase- Parameters:
parm1-- Returns:
- int true if the given node has child nodes.
-
getNodeType
public short getNodeType(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, return its DOM-style node type.%REVIEW% Generally, returning short is false economy. Return int? %REVIEW% Make assumption that node has already arrived. Is OK?
- Specified by:
getNodeTypein interfaceDTM- Overrides:
getNodeTypein classDTMDefaultBase- Parameters:
parm1-- Returns:
- int Node type, as per the DOM's Node._NODE constants.
-
isCharacterElementContentWhitespace
public boolean isCharacterElementContentWhitespace(int parm1)
Description copied from class:DTMDefaultBase2. [element content whitespace] A boolean indicating whether the character is white space appearing within element content (see [XML], 2.10 "White Space Handling"). Note that validating XML processors are required by XML 1.0 to provide this information. If there is no declaration for the containing element, this property has no value for white space characters. If no declaration has been read, but the [all declarations processed] property of the document information item is false (so there may be an unread declaration), then the value of this property is unknown for white space characters. It is always false for characters that are not white space.- Specified by:
isCharacterElementContentWhitespacein interfaceDTM- Overrides:
isCharacterElementContentWhitespacein classDTMDefaultBase- Parameters:
parm1-- Returns:
trueif the character data is whitespace;falseotherwise.
-
getFirstChild
public int getFirstChild(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, get the handle of the node's first child. If not yet resolved, waits for more nodes to be added to the document and tries again.- Specified by:
getFirstChildin interfaceDTM- Overrides:
getFirstChildin classDTMDefaultBase- Parameters:
parm1-- Returns:
- int DTM node-number of first child, or DTM.NULL to indicate none exists.
-
getDocumentSystemIdentifier
public java.lang.String getDocumentSystemIdentifier(int parm1)
Description copied from class:DTMDefaultBaseReturn the system identifier of the document entity. If it is not known, the value of this property is unknown.- Specified by:
getDocumentSystemIdentifierin interfaceDTM- Overrides:
getDocumentSystemIdentifierin classDTMDefaultBase- Parameters:
parm1-- Returns:
- the system identifier String object or null if unknown.
-
getNamespaceFromExpandedNameID
public java.lang.String getNamespaceFromExpandedNameID(int parm1)
Description copied from class:DTMDefaultBaseGiven an expanded-name ID, return the namespace URI part.- Specified by:
getNamespaceFromExpandedNameIDin interfaceDTM- Overrides:
getNamespaceFromExpandedNameIDin classDTMDefaultBase- Parameters:
parm1-- Returns:
- String URI value of this node's namespace, or null if no namespace was resolved.
-
getLocalNameFromExpandedNameID
public java.lang.String getLocalNameFromExpandedNameID(int parm1)
Description copied from class:DTMDefaultBaseGiven an expanded-name ID, return the local name part.- Specified by:
getLocalNameFromExpandedNameIDin interfaceDTM- Overrides:
getLocalNameFromExpandedNameIDin classDTMDefaultBase- Parameters:
parm1-- Returns:
- String Local name of this node.
-
getExpandedTypeID
public int getExpandedTypeID(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, return an ID that represents the node's expanded name.- Specified by:
getExpandedTypeIDin interfaceDTM- Overrides:
getExpandedTypeIDin classDTMDefaultBase- Parameters:
parm1-- Returns:
- the expanded-name id of the node.
-
getDocument
public int getDocument()
Description copied from class:DTMDefaultBaseFind the Document node handle for the document currently under construction. PLEASE NOTE that most people should use getOwnerDocument(nodeHandle) instead; this version of the operation is primarily intended for use during negotiation with the DTM Manager.- Specified by:
getDocumentin interfaceDTM- Overrides:
getDocumentin classDTMDefaultBase- Returns:
- int Node handle of document, which should always be valid.
-
isDocumentAllDeclarationsProcessed
public boolean isDocumentAllDeclarationsProcessed(int parm1)
Description copied from class:DTMDefaultBase10. [all declarations processed] This property is not strictly speaking part of the infoset of the document. Rather it is an indication of whether the processor has read the complete DTD. Its value is a boolean. If it is false, then certain properties (indicated in their descriptions below) may be unknown. If it is true, those properties are never unknown.- Specified by:
isDocumentAllDeclarationsProcessedin interfaceDTM- Overrides:
isDocumentAllDeclarationsProcessedin classDTMDefaultBase- Parameters:
parm1-- Returns:
trueif all declarations were processed;falseotherwise.
-
getOwnerDocument
public int getOwnerDocument(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, find the owning document node. This has the exact same semantics as the DOM Document method of the same name, in that if the nodeHandle is a document node, it will return NULL.%REVIEW% Since this is DOM-specific, it may belong at the DOM binding layer. Included here as a convenience function and to aid porting of DOM code to DTM.
- Specified by:
getOwnerDocumentin interfaceDTM- Overrides:
getOwnerDocumentin classDTMDefaultBase- Parameters:
parm1-- Returns:
- int Node handle of owning document, or -1 if the node was a Docment
- See Also:
DTM.getDocumentRoot(int nodeHandle)
-
getNextSibling
public int getNextSibling(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, advance to its next sibling. If not yet resolved, waits for more nodes to be added to the document and tries again.- Specified by:
getNextSiblingin interfaceDTM- Overrides:
getNextSiblingin classDTMDefaultBase- Parameters:
parm1-- Returns:
- int Node-number of next sibling, or DTM.NULL to indicate none exists.
-
getDocumentAllDeclarationsProcessed
public boolean getDocumentAllDeclarationsProcessed()
Description copied from class:DTMDefaultBaseReturn an indication of whether the processor has read the complete DTD. Its value is a boolean. If it is false, then certain properties (indicated in their descriptions below) may be unknown. If it is true, those properties are never unknown.- Specified by:
getDocumentAllDeclarationsProcessedin interfaceDTM- Overrides:
getDocumentAllDeclarationsProcessedin classDTMDefaultBase- Returns:
trueif all declarations were processed;falseotherwise.
-
getParent
public int getParent(int parm1)
Description copied from class:DTMDefaultBaseGiven a node handle, find its parent node.- Specified by:
getParentin interfaceDTM- Overrides:
getParentin classDTMDefaultBase- Parameters:
parm1-- Returns:
- int Node-number of parent, or DTM.NULL to indicate none exists.
-
getExpandedTypeID
public int getExpandedTypeID(java.lang.String parm1, java.lang.String parm2, int parm3)Description copied from class:DTMDefaultBaseGiven an expanded name, return an ID. If the expanded-name does not exist in the internal tables, the entry will be created, and the ID will be returned. Any additional nodes that are created that have this expanded name will use this ID.- Specified by:
getExpandedTypeIDin interfaceDTM- Overrides:
getExpandedTypeIDin classDTMDefaultBase- Parameters:
parm1-parm2-parm3-- Returns:
- the expanded-name id of the node.
-
setDocumentBaseURI
public void setDocumentBaseURI(java.lang.String parm1)
Description copied from class:DTMDefaultBaseSet the base URI of the document entity.- Specified by:
setDocumentBaseURIin interfaceDTM- Overrides:
setDocumentBaseURIin classDTMDefaultBase- Parameters:
parm1-
-
getStringValueChunk
public char[] getStringValueChunk(int parm1, int parm2, int[] parm3)Description copied from class:DTMDefaultBaseGet a character array chunk in the string-value of a node. (see http://www.w3.org/TR/xpath#data-model for the definition of a node's string-value). Note that a single text node may have multiple text chunks.- Specified by:
getStringValueChunkin interfaceDTM- Overrides:
getStringValueChunkin classDTMDefaultBase- Parameters:
parm1-parm2-parm3-- Returns:
- The character array reference where the chunk occurs.
-
getAxisTraverser
public DTMAxisTraverser getAxisTraverser(int parm1)
Description copied from class:DTMDefaultBaseTraversersThis returns a stateless "traverser", that can navigate over an XPath axis, though perhaps not in document order.- Specified by:
getAxisTraverserin interfaceDTM- Overrides:
getAxisTraverserin classDTMDefaultBaseTraversers- Parameters:
parm1-- Returns:
- A DTMAxisTraverser, or null if the given axis isn't supported.
-
getTypedAxisIterator
public DTMAxisIterator getTypedAxisIterator(int parm1, int parm2)
Description copied from class:DTMDefaultBaseIteratorsGet 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()).- Specified by:
getTypedAxisIteratorin interfaceDTM- Overrides:
getTypedAxisIteratorin classDTMDefaultBaseIterators- Parameters:
parm1-parm2-- Returns:
- A DTMAxisIterator, or null if the given axis isn't supported.
-
getAxisIterator
public DTMAxisIterator getAxisIterator(int parm1)
Description copied from class:DTMDefaultBaseIteratorsThis 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()).- Specified by:
getAxisIteratorin interfaceDTM- Overrides:
getAxisIteratorin classDTMDefaultBaseIterators- Parameters:
parm1-- Returns:
- A DTMAxisIterator, or null if the given axis isn't supported.
-
getElementById
public int getElementById(java.lang.String parm1)
Description copied from class:DTMDefaultBaseReturns theElementwhoseIDis given byelementId. If no such element exists, returnsDTM.NULL. Behavior is not defined if more than one element has thisID. Attributes (including those with the name "ID") are not of type ID unless so defined by DTD/Schema information available to the DTM implementation. Implementations that do not know whether attributes are of type ID or not are expected to returnDTM.NULL.%REVIEW% Presumably IDs are still scoped to a single document, and this operation searches only within a single document, right? Wouldn't want collisions between DTMs in the same process.
- Specified by:
getElementByIdin interfaceDTM- Specified by:
getElementByIdin classDTMDefaultBase- Parameters:
parm1-- Returns:
- The handle of the matching element.
-
getDeclHandler
public org.xml.sax.ext.DeclHandler getDeclHandler()
Description copied from interface:DTMReturn this DTM's DeclHandler, if it has one.- Returns:
- null if this model doesn't respond to SAX Decl events.
-
getErrorHandler
public org.xml.sax.ErrorHandler getErrorHandler()
Description copied from interface:DTMReturn this DTM's ErrorHandler, if it has one.- Returns:
- null if this model doesn't respond to SAX error events.
-
getDocumentTypeDeclarationSystemIdentifier
public java.lang.String getDocumentTypeDeclarationSystemIdentifier()
Description copied from class:DTMDefaultBaseA document type declaration information item has the following properties: 1. [system identifier] The system identifier of the external subset, if it exists. Otherwise this property has no value.- Specified by:
getDocumentTypeDeclarationSystemIdentifierin interfaceDTM- Specified by:
getDocumentTypeDeclarationSystemIdentifierin classDTMDefaultBase- Returns:
- the system identifier String object, or null if there is none.
-
-