Package net.sf.saxon.tinytree
Class TinyDocumentImpl
java.lang.Object
net.sf.saxon.tinytree.TinyNodeImpl
net.sf.saxon.tinytree.TinyDocumentImpl
- All Implemented Interfaces:
Source
,SourceLocator
,PullEvent
,DocumentInfo
,FingerprintedNode
,Item
,NodeInfo
,ValueRepresentation
A node in the XML parse tree representing the Document itself (or equivalently, the root
node of the Document).
-
Field Summary
Fields inherited from class net.sf.saxon.tinytree.TinyNodeImpl
NODE_LETTER, nodeNr, parent, tree
Fields inherited from interface net.sf.saxon.om.NodeInfo
ALL_NAMESPACES, EMPTY_NAMESPACE_LIST, IS_DTD_TYPE, IS_NILLED, LOCAL_NAMESPACES, NO_NAMESPACES
Fields inherited from interface net.sf.saxon.om.ValueRepresentation
EMPTY_VALUE_ARRAY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Copy this node to a given outputtervoid
generateId
(FastStringBuffer buffer) Get a character string that uniquely identifies this nodeGet the base URI of this root node.Get the configuration previously set using setConfigurationGet the root (document) nodeint
Get the line number of this root node.final int
Return the type of node.Find the parent node of this node.getRoot()
Get the root nodefinal String
Return the string-value of the node, that is, the concatenation of the character content of all descendent elements and text nodes.static CharSequence
getStringValue
(TinyTree tree, int nodeNr) Get the string value of a node.Get the value of the item as a CharSequence.Get the system id of this root nodegetTree()
Get the tree containing this nodeString[]
getUnparsedEntity
(String name) Get the unparsed entity with a given nameID if there is one, or null if not.Get the list of unparsed entities defined in this documentfinal boolean
Determine if the node has children.Get the element with a given ID.void
setBaseURI
(String uri) Set the base URI of this document nodevoid
setConfiguration
(Configuration config) Set the Configuration that contains this documentvoid
setSystemId
(String uri) Set the system id of this nodevoid
showSize()
Methods inherited from class net.sf.saxon.tinytree.TinyNodeImpl
atomize, compareOrder, equals, getAttributeValue, getColumnNumber, getDeclaredNamespaces, getDisplayName, getDocumentNumber, getFingerprint, getLocalPart, getNameCode, getNamePool, getNodeNumber, getPrefix, getPublicId, getSequenceNumber, getTypeAnnotation, getTypedValue, getURI, hashCode, isAncestorOrSelf, isId, isIdref, isNilled, isSameNodeInfo, iterateAxis, iterateAxis, setParentNode
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.sf.saxon.om.Item
getStringValueCS, getTypedValue
Methods inherited from interface net.sf.saxon.om.NodeInfo
atomize, compareOrder, equals, getAttributeValue, getColumnNumber, getDeclaredNamespaces, getDisplayName, getDocumentNumber, getFingerprint, getLocalPart, getNameCode, getNamePool, getPrefix, getStringValue, getTypeAnnotation, getURI, hasChildNodes, hashCode, isId, isIdref, isNilled, isSameNodeInfo, iterateAxis, iterateAxis
-
Constructor Details
-
TinyDocumentImpl
-
-
Method Details
-
getTree
Get the tree containing this node -
setConfiguration
Set the Configuration that contains this document -
getConfiguration
Get the configuration previously set using setConfiguration- Specified by:
getConfiguration
in interfaceNodeInfo
- Overrides:
getConfiguration
in classTinyNodeImpl
- Returns:
- the Configuration
-
setSystemId
Set the system id of this node- Specified by:
setSystemId
in interfaceSource
- Overrides:
setSystemId
in classTinyNodeImpl
-
getSystemId
Get the system id of this root node- Specified by:
getSystemId
in interfaceNodeInfo
- Specified by:
getSystemId
in interfaceSource
- Specified by:
getSystemId
in interfaceSourceLocator
- Overrides:
getSystemId
in classTinyNodeImpl
- Returns:
- the System Identifier of the entity in the source document containing the node, or null if not known or not applicable.
-
setBaseURI
Set the base URI of this document node -
getBaseURI
Get the base URI of this root node.- Specified by:
getBaseURI
in interfaceNodeInfo
- Overrides:
getBaseURI
in classTinyNodeImpl
- Returns:
- the base URI of the node. This may be null if the base URI is unknown.
-
getLineNumber
public int getLineNumber()Get the line number of this root node.- Specified by:
getLineNumber
in interfaceNodeInfo
- Specified by:
getLineNumber
in interfaceSourceLocator
- Overrides:
getLineNumber
in classTinyNodeImpl
- Returns:
- 0 always
-
getNodeKind
public final int getNodeKind()Return the type of node.- Specified by:
getNodeKind
in interfaceNodeInfo
- Returns:
- Type.DOCUMENT (always)
- See Also:
-
getParent
Find the parent node of this node.- Specified by:
getParent
in interfaceNodeInfo
- Overrides:
getParent
in classTinyNodeImpl
- Returns:
- The Node object describing the containing element or root node.
-
getRoot
Get the root node- Specified by:
getRoot
in interfaceNodeInfo
- Overrides:
getRoot
in classTinyNodeImpl
- Returns:
- the NodeInfo that is the root of the tree - not necessarily a document node
-
getDocumentRoot
Get the root (document) node- Specified by:
getDocumentRoot
in interfaceNodeInfo
- Overrides:
getDocumentRoot
in classTinyNodeImpl
- Returns:
- the DocumentInfo representing the document node, or null if the root of the tree is not a document node
-
generateId
Get a character string that uniquely identifies this node- Specified by:
generateId
in interfaceNodeInfo
- Overrides:
generateId
in classTinyNodeImpl
- Parameters:
buffer
- to contain an identifier based on the document number
-
selectID
Get the element with a given ID.- Specified by:
selectID
in interfaceDocumentInfo
- Parameters:
id
- The unique ID of the required element, previously registered using registerID()- Returns:
- The NodeInfo (always an Element) for the given ID if one has been registered, otherwise null.
-
getUnparsedEntityNames
Get the list of unparsed entities defined in this document- Specified by:
getUnparsedEntityNames
in interfaceDocumentInfo
- Returns:
- an Iterator, whose items are of type String, containing the names of all unparsed entities defined in this document. If there are no unparsed entities or if the information is not available then an empty iterator is returned
-
getUnparsedEntity
Get the unparsed entity with a given nameID if there is one, or null if not. If the entity does not exist, return null.- Specified by:
getUnparsedEntity
in interfaceDocumentInfo
- Parameters:
name
- the name of the entity- Returns:
- if the entity exists, return an array of two Strings, the first holding the system ID of the entity, the second holding the public
-
copy
public void copy(Receiver out, int whichNamespaces, boolean copyAnnotations, int locationId) throws XPathException Copy this node to a given outputter- Specified by:
copy
in interfaceNodeInfo
- 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.whichNamespaces
- in the case of an element, controls which namespace nodes should be copied. Values areNodeInfo.NO_NAMESPACES
,NodeInfo.LOCAL_NAMESPACES
,NodeInfo.ALL_NAMESPACES
copyAnnotations
- indicates whether the type annotations of element and attribute nodes should be copiedlocationId
- 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 a LocationCopier- Throws:
XPathException
-
showSize
public void showSize() -
hasChildNodes
public final boolean hasChildNodes()Determine if the node has children.- Specified by:
hasChildNodes
in interfaceNodeInfo
- Overrides:
hasChildNodes
in classTinyNodeImpl
- Returns:
true
if this node has any attributes,false
otherwise.
-
getStringValue
Return the string-value of the node, that is, the concatenation of the character content of all descendent elements and text nodes.- Returns:
- the accumulated character content of the element, including descendant elements.
- See Also:
-
getStringValueCS
Get the value of the item as a CharSequence. This is in some cases more efficient than the version of the method that returns a String.- Specified by:
getStringValueCS
in interfaceItem
- Specified by:
getStringValueCS
in interfaceValueRepresentation
- Overrides:
getStringValueCS
in classTinyNodeImpl
- Returns:
- the string value of the item
- See Also:
-
getStringValue
Get the string value of a node. This static method allows the string value of a node to be obtained without instantiating the node as a Java object. The method also returns a CharSequence rather than a string, which means it can sometimes avoid copying the data.- Parameters:
tree
- The containing documentnodeNr
- identifies the node whose string value is required. This must be a document or element node. The caller is trusted to ensure this.- Returns:
- the string value of the node, as a CharSequence
-