com.icl.saxon.tinytree
public final class TinyDocumentImpl extends TinyParentNodeImpl implements DocumentInfo, Document
Version: 26 April 1999
Field Summary | |
---|---|
protected int[] | attCode |
protected int[] | attParent |
protected String[] | attValue |
protected char[] | charBuffer |
protected int | charBufferLength |
protected StringBuffer | commentBuffer |
protected short[] | depth |
protected int | lastLevelOneNode |
protected int[] | length |
protected int[] | nameCode |
protected int[] | namespaceCode |
protected int[] | namespaceParent |
protected int[] | next |
protected byte[] | nodeType |
protected int | numberOfAttributes |
protected int | numberOfNamespaces |
protected int | numberOfNodes |
protected int[] | offset |
protected int[] | prior |
Constructor Summary | |
---|---|
TinyDocumentImpl() |
Method Summary | |
---|---|
protected void | addAttribute(int parent0, int code0, String type0, String value0) |
protected void | addNamespace(int parent0, int nscode0) |
protected void | addNode(short type0, int depth0, int offset0, int length0, int nameCode0) |
Node | adoptNode(Node source)
Attempts to adopt a node from another document to this document. |
protected void | appendChars(char[] chars, int start, int length) |
void | copy(Outputter out)
Copy 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 |
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 TinyAttributeImpl | getAttributeNode(int nr)
Make a (transient) attribute node from the array of attributes |
String | getBaseURI()
Get the base URI of this root node. |
DocumentInfo | getDocumentRoot()
Get the root (document) node |
String | getDocumentURI()
The location of the document or null if undefined or if
the Document was created using
DOMImplementation.createDocument . |
DOMConfiguration | getDomConfig()
The configuration used when Document.normalizeDocument()
is invoked.
|
String | getInputEncoding()
An attribute specifying the encoding used for this document at the time
of the parsing. |
Hashtable | getKeyIndex(KeyManager keymanager, int fingerprint)
Get the index for a given key |
protected int | getLineNumber(int sequence)
Get the line number for an element. |
int | getLineNumber()
Get the line number of this root node. |
NamePool | getNamePool()
Get the name pool used for the names in this document |
protected TinyNamespaceImpl | getNamespaceNode(int nr)
Make a (transient) namespace node from the array of namespace declarations |
TinyNodeImpl | getNode(int nr) |
short | getNodeType()
Return the type of node. |
NodeInfo | getParent()
Find the parent node 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. |
String | getSystemId()
Get the system id of this root node |
protected String | getSystemId(int seq)
Get the system id of an element in the document |
String | getUnparsedEntity(String name)
Get the unparsed entity with a given name |
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. |
String | getXmlVersion()
An attribute specifying, as part of the XML declaration, the version number of this document. |
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. |
Node | renameNode(Node n, String namespaceURI, String qualifiedName)
Rename an existing node of type ELEMENT_NODE or
ATTRIBUTE_NODE .
|
NodeInfo | selectID(String id)
Get the element with a given ID. |
void | setDocumentURI(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, Hashtable keyindex)
Set the index for a given key. |
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 |
void | setStrictErrorChecking(boolean strictErrorChecking)
An attribute specifying whether error checking is enforced or not. |
void | setSystemId(String uri)
Set the system id of this node |
protected void | setSystemId(int seq, String uri)
Set the system id of an element in the document |
protected void | setUnparsedEntity(String name, 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(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 |
Parameters: source The node to move into this document.
Returns: The adopted node, or null
if this operation
fails, such as when the source node comes from a different
implementation.
Throws: org.w3c.dom.DOMException NOT_SUPPORTED_ERR: Raised if the source node is of type
DOCUMENT
, DOCUMENT_TYPE
.
NO_MODIFICATION_ALLOWED_ERR: Raised when the source node is
readonly.
Since: DOM Level 3
Returns: the empty string
Returns: the DocumentInfo representing this document
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
.
Since: DOM Level 3
Document.normalizeDocument()
is invoked.
Since: DOM Level 3
null
when it is not known, such
as when the Document
was created in memory.
Since: DOM Level 3
Parameters: keymanager The key manager managing this key fingerprint The fingerprint of the name of the key (unique with the key manager)
Returns: The index, if one has been built, in the form of a Hashtable that maps the key value to a set of nodes having that key value. If no index has been built, returns null.
Returns: 0 always
Returns: NodeInfo.ROOT (always)
Returns: The Node object describing the containing element or root node.
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.
Since: DOM Level 3
Parameters: name the name of the entity
Returns: the URI of the entity if there is one, or empty string if not
null
when
unspecified or when it is not known, such as when the
Document
was created in memory.
Since: DOM Level 3
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].
Since: DOM Level 3
"1.0"
.
Since: DOM Level 3
Since: DOM Level 3
ELEMENT_NODE
or
ATTRIBUTE_NODE
.
Parameters: n The node to rename. namespaceURI The new namespace URI. qualifiedName The new qualified name.
Returns: The renamed node. This is either the specified node or the new node that was created to replace the specified node.
Throws: 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.
INVALID_CHARACTER_ERR: Raised if the new qualified name is not an
XML name according to the XML version in use specified in the
Document.xmlVersion
attribute.
WRONG_DOCUMENT_ERR: Raised when the specified node was created
from a different document than this document.
NAMESPACE_ERR: Raised if the 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/".
Since: DOM Level 3
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.
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
.
Since: DOM Level 3
Parameters: keymanager The key manager managing this key fingerprint 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.
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.
Since: DOM Level 3
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].
Throws: org.w3c.dom.DOMException NOT_SUPPORTED_ERR: Raised if this document does not support the "XML" feature.
Since: DOM Level 3
"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
.
Throws: 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.
Since: DOM Level 3