nu.xom

Class Text

public class Text extends Node

This class represents a run of text. CDATA sections are not treated differently than normal text. Text objects may be adjacent to other Text objects.

Version: 1.1b3

Author: Elliotte Rusty Harold

Constructor Summary
Text(String data)

This constructor creates a new Text object.

Text(Text text)

Creates a copy of the specified Text object.

Method Summary
Nodecopy()

Returns a deep copy of this Text with no parent, that can be added to this document or a different one.

NodegetChild(int position)

Throws IndexOutOfBoundsException because texts do not have children.

intgetChildCount()

Returns 0 because texts do not have children.

StringgetValue()

Returns the XPath 1.0 string-value of this Text node.

voidsetValue(String data)

Sets the content of the Text object to the specified data.

StringtoString()

Returns a String representation of this Text suitable for debugging and diagnosis.

StringtoXML()

Returns a string containing the XML serialization of this text node.

Constructor Detail

Text

public Text(String data)

This constructor creates a new Text object. The data is checked for legality according to XML 1.0 rules. Characters that can be serialized by escaping them such as < and & are allowed. However, characters such as the form feed, null, vertical tab, unmatched halves of surrogate pairs, and 0xFFFE and 0xFFFF are not allowed.

Parameters: data the initial text of the object

Throws: IllegalCharacterDataException if data contains any characters which are illegal in well-formed XML 1.0 such as null, vertical tab, or unmatched halves of surrogate pairs

Text

public Text(Text text)

Creates a copy of the specified Text object.

Parameters: text the Text object to copy

Method Detail

copy

public Node copy()

Returns a deep copy of this Text with no parent, that can be added to this document or a different one.

Returns: a deep copy of this text node with no parent

getChild

public final Node getChild(int position)

Throws IndexOutOfBoundsException because texts do not have children.

Parameters: position the index of the child node to return

Returns: never returns because texts do not have children; always throws an exception.

Throws: IndexOutOfBoundsException because texts do not have children

getChildCount

public final int getChildCount()

Returns 0 because texts do not have children.

Returns: zero

getValue

public final String getValue()

Returns the XPath 1.0 string-value of this Text node. The XPath string-value of a text node is the same as the text of the node.

Returns: the content of the node

setValue

public void setValue(String data)

Sets the content of the Text object to the specified data. The data is checked for legality according to XML 1.0 rules. Characters that can be serialized such as < and & are allowed. However, characters such as the form feed, null, vertical tab, unmatched halves of surrogate pairs, and 0xFFFE and 0xFFFF are not allowed. Passing null is the same as passing the empty string.

Parameters: data the text to install in the object

Throws: IllegalCharacterDataException if data contains any characters which are illegal in well-formed XML 1.0 such as null, vertical tab, or unmatched halves of surrogate pairs

toString

public final String toString()

Returns a String representation of this Text suitable for debugging and diagnosis. This is not the XML representation of this Text node.

Returns: a non-XML string representation of this node

toXML

public final String toXML()

Returns a string containing the XML serialization of this text node. Unlike getValue, this method escapes characters such as & and < using entity references such as &amp; and &lt;. It escapes the carriage return (\r) as &#x0D;. If this text node is a CDATA section, then it may wrap the value in CDATA section delimiters instead of escaping.

Returns: the string form of this text node

Copyright 2002-2006 Elliotte Rusty Harold
elharo@metalab.unc.edu