class Text

Library: XML
Package: DOM
Header: Poco/DOM/Text.h


The Text interface inherits from CharacterData and represents the textual content (termed character data in XML) of an Element or Attr. If there is no markup inside an element's content, the text is contained in a single object implementing the Text interface that is the only child of the element. If there is markup, it is parsed into the information items (elements, comments, etc.) and Text nodes that form the list of children of the element.

When a document is first made available via the DOM, there is only one Text node for each block of text. Users may create adjacent Text nodes that represent the contents of a given element without any intervening markup, but should be aware that there is no way to represent the separations between these nodes in XML or HTML, so they will not (in general) persist between DOM editing sessions. The normalize() method on Element merges any such adjacent Text objects into a single node for each block of text.


Direct Base Classes: CharacterData

All Base Classes: AbstractNode, CharacterData, DOMObject, EventTarget, Node

Known Derived Classes: CDATASection

Member Summary

Member Functions: copyNode, innerText, nodeName, nodeType, splitText

Inherited Functions: addEventListener, appendChild, appendData, attributes, autoRelease, bubbleEvent, captureEvent, childNodes, cloneNode, copyNode, data, deleteData, dispatchAttrModified, dispatchCharacterDataModified, dispatchEvent, dispatchNodeInserted, dispatchNodeInsertedIntoDocument, dispatchNodeRemoved, dispatchNodeRemovedFromDocument, dispatchSubtreeModified, duplicate, events, eventsSuspended, firstChild, getData, getNodeByPath, getNodeByPathNS, getNodeValue, hasAttributes, hasChildNodes, innerText, insertBefore, insertData, isSupported, lastChild, length, localName, namespaceURI, nextSibling, nodeName, nodeType, nodeValue, normalize, ownerDocument, parentNode, prefix, previousSibling, release, removeChild, removeEventListener, replaceChild, replaceData, setData, setNodeValue, setOwnerDocument, substringData, trimmedData


Text protected

    Document * pOwnerDocument,
    const XMLString & data

Text protected

    Document * pOwnerDocument,
    const Text & text


~Text protected virtual


Member Functions

innerText virtual

XMLString innerText() const;

nodeName virtual

const XMLString & nodeName() const;

nodeType virtual

unsigned short nodeType() const;


Text * splitText(
    unsigned long offset

Breaks this node into two nodes at the specified offset, keeping both in the tree as siblings. This node then only contains all the content up to the offset point. A new node of the same type, which is inserted as the next sibling of this node, contains all the content at and after the offset point. When the offset is equal to the length of this node, the new node has no data.

copyNode protected virtual

Node * copyNode(
    bool deep,
    Document * pOwnerDocument
) const;