|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.icl.saxon.om.AbstractNode com.icl.saxon.tinytree.TinyNodeImpl com.icl.saxon.tinytree.TinyParentNodeImpl com.icl.saxon.tinytree.TinyDocumentImpl
A node in the XML parse tree representing the Document itself (or equivalently, the root node of the Document).
Field Summary | |
protected int[] |
attCode
|
protected int[] |
attParent
|
protected java.lang.String[] |
attValue
|
protected char[] |
charBuffer
|
protected int |
charBufferLength
|
protected java.lang.StringBuffer |
commentBuffer
|
protected short[] |
depth
|
protected TinyDocumentImpl |
document
|
protected int |
lastLevelOneNode
|
protected int[] |
length
|
protected int[] |
nameCode
|
protected int[] |
namespaceCode
|
protected int[] |
namespaceParent
|
protected int[] |
next
|
protected int |
nodeNr
|
protected byte[] |
nodeType
|
protected int |
numberOfAttributes
|
protected int |
numberOfNamespaces
|
protected int |
numberOfNodes
|
protected int[] |
offset
|
protected com.icl.saxon.tinytree.TinyNodeImpl |
parent
|
protected int[] |
prior
|
Fields inherited from class com.icl.saxon.om.AbstractNode |
NODE_LETTER |
Fields inherited from interface com.icl.saxon.om.NodeInfo |
ATTRIBUTE, COMMENT, ELEMENT, NAMESPACE, NODE, NONE, NUMBER_OF_TYPES, PI, ROOT, TEXT |
Fields inherited from interface org.w3c.dom.Node |
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE |
Constructor Summary | |
TinyDocumentImpl()
|
Method Summary | |
protected void |
addAttribute(int parent0,
int code0,
java.lang.String type0,
java.lang.String value0)
|
protected void |
addNamespace(int parent0,
int nscode0)
|
protected void |
addNode(short type0,
int depth0,
int offset0,
int length0,
int nameCode0)
|
org.w3c.dom.Node |
adoptNode(org.w3c.dom.Node source)
Attempts to adopt a node from another document to this document. |
protected void |
appendChars(char[] chars,
int start,
int length)
|
int |
compareOrder(NodeInfo other)
Determine the relative position of this node and another node, in document order. |
void |
copy(Outputter out)
Copy this node to a given outputter |
void |
copyStringValue(Outputter out)
Copy the string-value of this node to a given outputter |
void |
diagnosticDump()
Produce diagnostic print of main tree arrays |
protected void |
ensureAttributeCapacity()
|
protected void |
ensureNamespaceCapacity()
|
protected void |
ensureNodeCapacity()
|
protected void |
ensurePriorIndex()
On demand, make an index for quick access to preceding-sibling nodes |
java.lang.String |
generateId()
Get a character string that uniquely identifies this node within the document |
protected AxisEnumeration |
getAllElements(int fingerprint)
Get a list of all elements with a given name. |
protected com.icl.saxon.tinytree.TinyAttributeImpl |
getAttributeNode(int nr)
Make a (transient) attribute node from the array of attributes |
java.lang.String |
getAttributeValue(int fingerprint)
Get the value of a given attribute of this node |
java.lang.String |
getAttributeValue(java.lang.String uri,
java.lang.String localName)
Find the value of a given attribute of this node. |
java.lang.String |
getBaseURI()
Get the base URI of this root node. |
java.lang.String |
getDisplayName()
Get the display name of this node. |
DocumentInfo |
getDocumentRoot()
Get the root (document) node |
java.lang.String |
getDocumentURI()
The location of the document or null if undefined or if
the Document was created using
DOMImplementation.createDocument . |
org.w3c.dom.DOMConfiguration |
getDomConfig()
The configuration used when Document.normalizeDocument()
is invoked. |
AxisEnumeration |
getEnumeration(byte axisNumber,
NodeTest nodeTest)
Return an enumeration over the nodes reached by the given axis from this node |
int |
getFingerprint()
Get the fingerprint of the node, used for matching names |
java.lang.String |
getInputEncoding()
An attribute specifying the encoding used for this document at the time of the parsing. |
java.util.Hashtable |
getKeyIndex(KeyManager keymanager,
int fingerprint)
Get the index for a given key |
int |
getLineNumber()
Get the line number of this root node. |
protected int |
getLineNumber(int sequence)
Get the line number for an element. |
java.lang.String |
getLocalName()
Get the local name of this node. |
int |
getNameCode()
Get the name code of the node, used for matching names |
NamePool |
getNamePool()
Get the name pool used for the names in this document |
protected com.icl.saxon.tinytree.TinyNamespaceImpl |
getNamespaceNode(int nr)
Make a (transient) namespace node from the array of namespace declarations |
com.icl.saxon.tinytree.TinyNodeImpl |
getNode(int nr)
|
short |
getNodeType()
Return the type of node. |
org.w3c.dom.Node |
getOriginatingNode()
Get the node corresponding to this javax.xml.transform.dom.DOMLocator |
NodeInfo |
getParent()
Find the parent node of this node. |
java.lang.String |
getPrefix()
Get the prefix part of the name of this node. |
long |
getSequenceNumber()
Get the node sequence number (in document order). |
boolean |
getStrictErrorChecking()
An attribute specifying whether error checking is enforced or not. |
java.lang.String |
getStringValue()
Return the string-value of the node, that is, the concatenation of the character content of all descendent elements and text nodes. |
java.lang.String |
getSystemId()
Get the system id of this root node |
protected java.lang.String |
getSystemId(int seq)
Get the system id of an element in the document |
java.lang.String |
getUnparsedEntity(java.lang.String name)
Get the unparsed entity with a given name |
java.lang.String |
getURI()
Get the URI part of the name of this node. |
java.lang.String |
getXmlEncoding()
An attribute specifying, as part of the XML declaration, the encoding of this document. |
boolean |
getXmlStandalone()
An attribute specifying, as part of the XML declaration, whether this document is standalone. |
java.lang.String |
getXmlVersion()
An attribute specifying, as part of the XML declaration, the version number of this document. |
boolean |
hasAttributes()
Returns whether this node has any attributes. |
boolean |
hasChildNodes()
Determine if the node has children. |
boolean |
isSameNodeInfo(NodeInfo other)
Determine whether this is the same node as another node |
protected boolean |
isUsingNamespaces()
determine whether this document uses namespaces |
void |
normalizeDocument()
This method acts as if the document was going through a save and load cycle, putting the document in a "normal" form. |
void |
outputNamespaceNodes(Outputter out,
boolean includeAncestors)
Output all namespace nodes associated with this element. |
org.w3c.dom.Node |
renameNode(org.w3c.dom.Node n,
java.lang.String namespaceURI,
java.lang.String qualifiedName)
Rename an existing node of type ELEMENT_NODE or
ATTRIBUTE_NODE . |
NodeInfo |
selectID(java.lang.String id)
Get the element with a given ID. |
void |
setDocumentURI(java.lang.String documentURI)
The location of the document or null if undefined or if
the Document was created using
DOMImplementation.createDocument . |
void |
setKeyIndex(KeyManager keymanager,
int fingerprint,
java.util.Hashtable keyindex)
Set the index for a given key. |
void |
setLineNumber(int line)
Set the line number of the node within its source document entity |
protected void |
setLineNumber(int sequence,
int line)
Set the line number for an element. |
void |
setLineNumbering()
Set line numbering on |
void |
setNamePool(NamePool pool)
Set the name pool used for all names in this document |
protected void |
setParentNode(com.icl.saxon.tinytree.TinyNodeImpl parent)
Set the parent of this node. |
void |
setStrictErrorChecking(boolean strictErrorChecking)
An attribute specifying whether error checking is enforced or not. |
protected void |
setSystemId(int seq,
java.lang.String uri)
Set the system id of an element in the document |
void |
setSystemId(java.lang.String uri)
Set the system id of this node |
protected void |
setUnparsedEntity(java.lang.String name,
java.lang.String uri)
Set an unparsed entity URI associated with this document. |
void |
setXmlStandalone(boolean xmlStandalone)
An attribute specifying, as part of the XML declaration, whether this document is standalone. |
void |
setXmlVersion(java.lang.String xmlVersion)
An attribute specifying, as part of the XML declaration, the version number of this document. |
protected void |
truncate(int nodes)
Truncate the tree: used in preview mode to delete an element after it has been processed |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.icl.saxon.om.NodeInfo |
compareOrder, copyStringValue, getAttributeValue, getAttributeValue, getDisplayName, getEnumeration, getFingerprint, getLocalName, getNameCode, getPrefix, getStringValue, getURI, hasChildNodes, isSameNodeInfo, outputNamespaceNodes |
Methods inherited from interface org.w3c.dom.Document |
createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, getDoctype, getDocumentElement, getElementById, getElementsByTagName, getElementsByTagNameNS, getImplementation, importNode |
Methods inherited from interface org.w3c.dom.Node |
appendChild, cloneNode, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, hasAttributes, hasChildNodes, insertBefore, isSupported, normalize, removeChild, replaceChild, setNodeValue, setPrefix |
Field Detail |
protected char[] charBuffer
protected int charBufferLength
protected java.lang.StringBuffer commentBuffer
protected int numberOfNodes
protected int lastLevelOneNode
protected byte[] nodeType
protected short[] depth
protected int[] next
protected int[] offset
protected int[] length
protected int[] nameCode
protected int[] prior
protected int numberOfAttributes
protected int[] attParent
protected int[] attCode
protected java.lang.String[] attValue
protected int numberOfNamespaces
protected int[] namespaceParent
protected int[] namespaceCode
protected TinyDocumentImpl document
protected int nodeNr
protected com.icl.saxon.tinytree.TinyNodeImpl parent
Constructor Detail |
public TinyDocumentImpl()
Method Detail |
public void setNamePool(NamePool pool)
setNamePool
in interface DocumentInfo
public NamePool getNamePool()
getNamePool
in interface DocumentInfo
protected void ensureNodeCapacity()
protected void ensureAttributeCapacity()
protected void ensureNamespaceCapacity()
protected void addNode(short type0, int depth0, int offset0, int length0, int nameCode0)
protected void appendChars(char[] chars, int start, int length)
protected void truncate(int nodes)
protected void ensurePriorIndex()
protected void addAttribute(int parent0, int code0, java.lang.String type0, java.lang.String value0)
protected void addNamespace(int parent0, int nscode0)
public com.icl.saxon.tinytree.TinyNodeImpl getNode(int nr)
public long getSequenceNumber()
protected com.icl.saxon.tinytree.TinyAttributeImpl getAttributeNode(int nr)
protected boolean isUsingNamespaces()
protected com.icl.saxon.tinytree.TinyNamespaceImpl getNamespaceNode(int nr)
public void setSystemId(java.lang.String uri)
setSystemId
in interface Source
public java.lang.String getSystemId()
getSystemId
in interface NodeInfo
public java.lang.String getBaseURI()
getBaseURI
in interface NodeInfo
protected void setSystemId(int seq, java.lang.String uri)
protected java.lang.String getSystemId(int seq)
public void setLineNumbering()
protected void setLineNumber(int sequence, int line)
protected int getLineNumber(int sequence)
public int getLineNumber()
getLineNumber
in interface NodeInfo
public final short getNodeType()
getNodeType
in interface NodeInfo
public NodeInfo getParent()
getParent
in interface NodeInfo
public DocumentInfo getDocumentRoot()
getDocumentRoot
in interface NodeInfo
public java.lang.String generateId()
generateId
in interface NodeInfo
protected AxisEnumeration getAllElements(int fingerprint)
public NodeInfo selectID(java.lang.String id)
selectID
in interface DocumentInfo
id
- The unique ID of the required element, previously registered using registerID()
public java.util.Hashtable getKeyIndex(KeyManager keymanager, int fingerprint)
getKeyIndex
in interface DocumentInfo
keymanager
- The key manager managing this keyfingerprint
- The fingerprint of the name of the key (unique with the key manager)
public void setKeyIndex(KeyManager keymanager, int fingerprint, java.util.Hashtable keyindex)
setKeyIndex
in interface DocumentInfo
keymanager
- The key manager managing this keyfingerprint
- The fingerprint of the name of the key (unique with the key manager)keyindex
- the index, in the form of a Hashtable that
maps the key value to a set of nodes having that key value. Or the String
"under construction", indicating that the index is being built.protected void setUnparsedEntity(java.lang.String name, java.lang.String uri)
public java.lang.String getUnparsedEntity(java.lang.String name)
getUnparsedEntity
in interface DocumentInfo
name
- the name of the entity
public void copy(Outputter out) throws TransformerException
copy
in interface NodeInfo
TransformerException
public void diagnosticDump()
public org.w3c.dom.Node adoptNode(org.w3c.dom.Node source) throws org.w3c.dom.DOMException
source
- The node to move into this document.
null
if this operation
fails, such as when the source node comes from a different
implementation.
org.w3c.dom.DOMException
- NOT_SUPPORTED_ERR: Raised if the source node is of type
DOCUMENT
, DOCUMENT_TYPE
.
public java.lang.String getDocumentURI()
null
if undefined or if
the Document
was created using
DOMImplementation.createDocument
. No lexical checking is
performed when setting this attribute; this could result in a
null
value returned when using Node.baseURI
.
Document
supports the feature
"HTML" [DOM Level 2 HTML]
, the href attribute of the HTML BASE element takes precedence over
this attribute when computing Node.baseURI
.
public org.w3c.dom.DOMConfiguration getDomConfig()
Document.normalizeDocument()
is invoked.
public java.lang.String getInputEncoding()
null
when it is not known, such
as when the Document
was created in memory.
public boolean getStrictErrorChecking()
false
, the implementation is free to not test
every possible error case normally defined on DOM operations, and not
raise any DOMException
on DOM operations or report
errors while using Document.normalizeDocument()
. In case
of error, the behavior is undefined. This attribute is
true
by default.
public java.lang.String getXmlEncoding()
null
when
unspecified or when it is not known, such as when the
Document
was created in memory.
public boolean getXmlStandalone()
false
when
unspecified.
Note: No verification is done on the value when setting
this attribute. Applications should use
Document.normalizeDocument()
with the "validate"
parameter to verify if the value matches the validity
constraint for standalone document declaration as defined in [XML 1.0].
public java.lang.String getXmlVersion()
"1.0"
.
public void normalizeDocument()
public org.w3c.dom.Node renameNode(org.w3c.dom.Node n, java.lang.String namespaceURI, java.lang.String qualifiedName) throws org.w3c.dom.DOMException
ELEMENT_NODE
or
ATTRIBUTE_NODE
.
n
- The node to rename.namespaceURI
- The new namespace URI.qualifiedName
- The new qualified name.
org.w3c.dom.DOMException
- NOT_SUPPORTED_ERR: Raised when the type of the specified node is
neither ELEMENT_NODE
nor ATTRIBUTE_NODE
,
or if the implementation does not support the renaming of the
document element.
Document.xmlVersion
attribute.
qualifiedName
is a
malformed qualified name, if the qualifiedName
has a
prefix and the namespaceURI
is null
, or
if the qualifiedName
has a prefix that is "xml" and
the namespaceURI
is different from "
http://www.w3.org/XML/1998/namespace" [XML Namespaces]
. Also raised, when the node being renamed is an attribute, if the
qualifiedName
, or its prefix, is "xmlns" and the
namespaceURI
is different from "http://www.w3.org/2000/xmlns/".public void setDocumentURI(java.lang.String documentURI)
null
if undefined or if
the Document
was created using
DOMImplementation.createDocument
. No lexical checking is
performed when setting this attribute; this could result in a
null
value returned when using Node.baseURI
.
Document
supports the feature
"HTML" [DOM Level 2 HTML]
, the href attribute of the HTML BASE element takes precedence over
this attribute when computing Node.baseURI
.
public void setStrictErrorChecking(boolean strictErrorChecking)
false
, the implementation is free to not test
every possible error case normally defined on DOM operations, and not
raise any DOMException
on DOM operations or report
errors while using Document.normalizeDocument()
. In case
of error, the behavior is undefined. This attribute is
true
by default.
public void setXmlStandalone(boolean xmlStandalone) throws org.w3c.dom.DOMException
false
when
unspecified.
Note: No verification is done on the value when setting
this attribute. Applications should use
Document.normalizeDocument()
with the "validate"
parameter to verify if the value matches the validity
constraint for standalone document declaration as defined in [XML 1.0].
org.w3c.dom.DOMException
- NOT_SUPPORTED_ERR: Raised if this document does not support the
"XML" feature.public void setXmlVersion(java.lang.String xmlVersion) throws org.w3c.dom.DOMException
"1.0"
. If this document does not support the "XML"
feature, the value is always null
. Changing this
attribute will affect methods that check for invalid characters in
XML names. Application should invoke
Document.normalizeDocument()
in order to check for
invalid characters in the Node
s that are already part of
this Document
.
DOMImplementation.hasFeature(feature, version)
method
with parameter values "XMLVersion" and "1.0" (respectively) to
determine if an implementation supports [XML 1.0]. DOM
applications may use the same method with parameter values
"XMLVersion" and "1.1" (respectively) to determine if an
implementation supports [XML 1.1]. In both
cases, in order to support XML, an implementation must also support
the "XML" feature defined in this specification. Document
objects supporting a version of the "XMLVersion" feature must not
raise a NOT_SUPPORTED_ERR
exception for the same version
number when using Document.xmlVersion
.
org.w3c.dom.DOMException
- NOT_SUPPORTED_ERR: Raised if the version is set to a value that is
not supported by this Document
or if this document
does not support the "XML" feature.public boolean hasChildNodes()
true
if this node has any attributes,
false
otherwise.public java.lang.String getStringValue()
public void copyStringValue(Outputter out) throws TransformerException
copyStringValue
in interface NodeInfo
copyStringValue
in class AbstractNode
TransformerException
protected void setParentNode(com.icl.saxon.tinytree.TinyNodeImpl parent)
public boolean isSameNodeInfo(NodeInfo other)
isSameNodeInfo
in interface NodeInfo
isSameNodeInfo
in class AbstractNode
public org.w3c.dom.Node getOriginatingNode()
getOriginatingNode
in interface DOMLocator
getOriginatingNode
in class AbstractNode
public void setLineNumber(int line)
public final int compareOrder(NodeInfo other)
compareOrder
in interface NodeInfo
compareOrder
in class AbstractNode
other
- The other node, whose position is to be compared with this node
public int getFingerprint()
getFingerprint
in interface NodeInfo
getFingerprint
in class AbstractNode
public int getNameCode()
getNameCode
in interface NodeInfo
getNameCode
in class AbstractNode
public java.lang.String getPrefix()
getPrefix
in interface org.w3c.dom.Node
getPrefix
in class AbstractNode
public java.lang.String getURI()
getURI
in interface NodeInfo
getURI
in class AbstractNode
public java.lang.String getDisplayName()
getDisplayName
in interface NodeInfo
getDisplayName
in class AbstractNode
public java.lang.String getLocalName()
getLocalName
in interface org.w3c.dom.Node
getLocalName
in class AbstractNode
public AxisEnumeration getEnumeration(byte axisNumber, NodeTest nodeTest)
getEnumeration
in interface NodeInfo
getEnumeration
in class AbstractNode
axisNumber
- Identifies the required axis, eg. Axis.CHILD or Axis.PARENTnodeTest
- A pattern to be matched by the returned nodes
public boolean hasAttributes()
hasAttributes
in interface org.w3c.dom.Node
hasAttributes
in class AbstractNode
true
if this node has any attributes,
false
otherwise.public java.lang.String getAttributeValue(java.lang.String uri, java.lang.String localName)
getAttributeValue
in interface NodeInfo
getAttributeValue
in class AbstractNode
uri
- the namespace uri of an attributelocalName
- the local name of an attribute
public java.lang.String getAttributeValue(int fingerprint)
getAttributeValue
in interface NodeInfo
getAttributeValue
in class AbstractNode
fingerprint
- The fingerprint of the attribute name
public void outputNamespaceNodes(Outputter out, boolean includeAncestors) throws TransformerException
outputNamespaceNodes
in interface NodeInfo
outputNamespaceNodes
in class AbstractNode
out
- The relevant outputterincludeAncestors
- True if namespaces declared on ancestor elements must
be output; false if it is known that these are already on the result tree
TransformerException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |