# Titanium.XML.Node

A single node in the Titanium.XML.Document tree.

Availability
0.9
0.9
9.2.0

# Overview

Implements the DOM Level 2 API (opens new window) on Android and iOS.

Note that on iOS, only Titanium.XML.Element nodes are mutable. This means that the methods appendChild, insertBefore, removeChild, and replaceChild only work on Element objects. If one of these methods is called on another type of node, it throws an exception.

# Properties

# attributes READONLY

Availability
0.9
0.9
9.2.0

A map of this node's attributes.

As defined by the DOM specification, only Titanium.XML.Element nodes have attributes. For all other node types, this property is always null.


# childNodes READONLY

Availability
0.9
0.9
9.2.0
childNodes :Titanium.XML.NodeList

A Titanium.XML.NodeList of this node's children.


# firstChild READONLY

Availability
0.9
0.9
9.2.0
firstChild :Titanium.XML.Node

This node's first child.


# lastChild READONLY

Availability
0.9
0.9
9.2.0
lastChild :Titanium.XML.Node

This node's last child.


# localName

Availability
0.9
0.9
9.2.0
localName :String

Local part of the qualified name of this node.

The local part of the qualified name that comes after the colon. That is, the name without the namespace prefix.


# namespaceURI READONLY

Availability
0.9
0.9
9.2.0
namespaceURI :String

Namespace URI of this node.


# nextSibling READONLY

Availability
0.9
0.9
9.2.0
nextSibling :Titanium.XML.Node

This node's next sibling.


# nodeName READONLY

Availability
0.9
0.9
9.2.0
nodeName :String

Name of this node.

Certain node types have constant values defined by the DOM specification:

  • Text node: #text
  • Comment node: #comment
  • CDATA section node: #cdata-section
  • Document node: #document
  • Document fragment node: #document-fragment

# nodeType READONLY

Availability
0.9
0.9
9.2.0
nodeType :Number

This node's type. One of ELEMENT_NODE, ATTRIBUTE_NODE, TEXT_NODE, CDATA_SECTION_NODE, ENTITY_REFERENCE_NODE, ENTITY_NODE, PROCESSING_INSTRUCTION_NODE, COMMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, DOCUMENT_FRAGMENT_NODE, NOTATION_NODE.


# nodeValue

Availability
0.9
0.9
9.2.0
nodeValue :String

Content (value) of this node.

As defined in the DOM specification, the node value is always null for Document, DocumentFragment, DocumentType, Element, Entity, EntityReference, and Notation nodes.


# ownerDocument READONLY

Availability
0.9
0.9
9.2.0
ownerDocument :Titanium.XML.Document

This node's owning document.

Note that a node always has an owning document, even if it is not part of the document tree.

For more on node ownership, see ownerDocument issues in the W3C DOM FAQ.


# parentNode READONLY

Availability
0.9
0.9
9.2.0
parentNode :Titanium.XML.Node

This node's parent node.


# prefix

Availability
0.9
0.9
9.2.0
prefix :String

Namespace prefix of this node.

Read-only on iOS, read-write on other platforms.


# previousSibling READONLY

Availability
0.9
0.9
9.2.0
previousSibling :Titanium.XML.Node

This node's previous sibling.


# text READONLYDEPRECATED

Availability
0.9
9.2.0
text :String

DEPRECATED SINCE 2.0.0

Use textContent instead.

Content (value) of all text nodes within this node.


# textContent READONLY

Availability
0.9
9.2.0
textContent :String

Content (value) of all text nodes within this node.

On Android, textContent is supported on Titanium.XML.Element and Titanium.XML.Text nodes only.

# Methods

# appendChild

Availability
0.9
0.9
9.2.0
appendChild(newChild) Titanium.XML.Node

Appends the node newChild as a child of this node.

On iOS, appendChild is supported on Titanium.XML.Element nodes only.

Parameters

Name Type Description
newChild Titanium.XML.Node

New node to append.

Returns

Newly-appended node.


# cloneNode

Availability
0.9
0.9
9.2.0
cloneNode(deep) Titanium.XML.Node

Returns a duplicate of this node.

Parameters

Name Type Description
deep Boolean

Whether or not to perform a deep copy of this node.

Returns

Cloned node.


# hasAttributes

Availability
0.9
0.9
9.2.0
hasAttributes() Boolean

Returns true if this node has attributes.

Returns

True if this node has attributes, false if it does not.

Type
Boolean

# hasChildNodes

Availability
0.9
0.9
9.2.0
hasChildNodes() Boolean

Returns true if this node has child nodes.

Returns

True if this node has children, false if it does not.

Type
Boolean

# insertBefore

Availability
0.9
0.9
9.2.0
insertBefore(newChild, refChild) Titanium.XML.Node

Inserts the node newChild before the node refChild.

On iOS, insertBefore is supported on Titanium.XML.Element nodes only.

Parameters

Name Type Description
newChild Titanium.XML.Node

Node to insert.

refChild Titanium.XML.Node

Node to insert newChild before.

Returns

The inserted node.


# isSupported

Availability
0.9
0.9
9.2.0
isSupported(feature, version) Boolean

Tests whether the DOM implementation supports a specific feature.

Parameters

Name Type Description
feature String

Name of the feature.

version String

Version number of the feature.

Returns

True if the feature is supported, false if it is not.

Type
Boolean

# normalize

Availability
0.9
normalize() void

Normalizes text and attribute nodes in this node's child hierarchy.

Returns

Type
void

# removeChild

Availability
0.9
0.9
9.2.0
removeChild(oldChild) Titanium.XML.Node

Removes a child node from this node.

On iOS, removeChild is supported on Titanium.XML.Element nodes only.

Parameters

Name Type Description
oldChild Titanium.XML.Node

Node to remove.

Returns

Node that was removed.


# replaceChild

Availability
0.9
0.9
9.2.0
replaceChild(newChild, oldChild) Titanium.XML.Node

Replaces the node oldChild with the node newChild.

On iOS, replaceChild is supported on Titanium.XML.Element nodes only.

Parameters

Name Type Description
newChild Titanium.XML.Node

New node.

oldChild Titanium.XML.Node

Node being replaced.

Returns

Node that was replaced.

# Constants

# ATTRIBUTE_NODE

Availability
0.9
0.9
9.2.0
ATTRIBUTE_NODE :Number

Used with nodeType to identify an Titanium.XML.Attr node.


# CDATA_SECTION_NODE

Availability
0.9
0.9
9.2.0
CDATA_SECTION_NODE :Number

Used with nodeType to identify a Titanium.XML.CDATASection node.


# COMMENT_NODE

Availability
0.9
0.9
9.2.0
COMMENT_NODE :Number

Used with nodeType to identify a Titanium.XML.Comment node.


# DOCUMENT_FRAGMENT_NODE

Availability
0.9
0.9
9.2.0
DOCUMENT_FRAGMENT_NODE :Number

Used with nodeType to identify a Titanium.XML.DocumentFragment node.


# DOCUMENT_NODE

Availability
0.9
0.9
9.2.0
DOCUMENT_NODE :Number

Used with nodeType to identify a Titanium.XML.Document node.


# DOCUMENT_TYPE_NODE

Availability
0.9
0.9
9.2.0
DOCUMENT_TYPE_NODE :Number

Used with nodeType to identify a Titanium.XML.DocumentType node.


# ELEMENT_NODE

Availability
0.9
0.9
9.2.0
ELEMENT_NODE :Number

Used with nodeType to identify an Titanium.XML.Element node.


# ENTITY_NODE

Availability
0.9
0.9
9.2.0
ENTITY_NODE :Number

Used with nodeType to identify an Titanium.XML.Entity node.


# ENTITY_REFERENCE_NODE

Availability
0.9
0.9
9.2.0
ENTITY_REFERENCE_NODE :Number

Used with nodeType to identify an Titanium.XML.EntityReference node.


# NOTATION_NODE

Availability
0.9
0.9
9.2.0
NOTATION_NODE :Number

Used with nodeType to identify a Titanium.XML.Notation node.


# PROCESSING_INSTRUCTION_NODE

Availability
0.9
0.9
9.2.0
PROCESSING_INSTRUCTION_NODE :Number

Used with nodeType to identify a Titanium.XML.ProcessingInstruction node.


# TEXT_NODE

Availability
0.9
0.9
9.2.0
TEXT_NODE :Number

Used with nodeType to identify a Titanium.XML.Text node.