Xerces-C++ 3.3.0
DOMText Class Referenceabstract

The DOMText interface inherits from DOMCharacterData and represents the textual content (termed character data in XML) of an DOMElement or DOMAttr. More...

#include <xercesc/dom/DOMText.hpp>

Inheritance diagram for DOMText:
DOMCharacterData DOMNode DOMCDATASection

Public Member Functions

Destructor
virtual ~DOMText ()
 Destructor.
 
Functions introduced in DOM Level 1
virtual DOMTextsplitText (XMLSize_t offset)=0
 Breaks this node into two nodes at the specified offset, keeping both in the tree as siblings.
 
Functions introduced in DOM Level 3
virtual bool getIsElementContentWhitespace () const =0
 Returns whether this text node contains element content whitespace, often abusively called "ignorable whitespace".
 
virtual const XMLChgetWholeText () const =0
 Returns all text of DOMText nodes logically-adjacent text nodes to this node, concatenated in document order.
 
virtual DOMTextreplaceWholeText (const XMLCh *content)=0
 Substitutes the a specified text for the text of the current node and all logically-adjacent text nodes.
 
Non-standard extension
virtual bool isIgnorableWhitespace () const =0
 Non-standard extension.
 
- Public Member Functions inherited from DOMCharacterData
virtual ~DOMCharacterData ()
 Destructor.
 
virtual const XMLChgetData () const =0
 Returns the character data of the node that implements this interface.
 
virtual XMLSize_t getLength () const =0
 Returns the number of characters that are available through data and the substringData method below.
 
virtual const XMLChsubstringData (XMLSize_t offset, XMLSize_t count) const =0
 Extracts a range of data from the node.
 
virtual void appendData (const XMLCh *arg)=0
 Append the string to the end of the character data of the node.
 
virtual void insertData (XMLSize_t offset, const XMLCh *arg)=0
 Insert a string at the specified character offset.
 
virtual void deleteData (XMLSize_t offset, XMLSize_t count)=0
 Remove a range of characters from the node.
 
virtual void replaceData (XMLSize_t offset, XMLSize_t count, const XMLCh *arg)=0
 Replace the characters starting at the specified character offset with the specified string.
 
virtual void setData (const XMLCh *data)=0
 Sets the character data of the node that implements this interface.
 
- Public Member Functions inherited from DOMNode
virtual ~DOMNode ()
 Destructor.
 
virtual const XMLChgetNodeName () const =0
 The name of this node, depending on its type; see the table above.
 
virtual const XMLChgetNodeValue () const =0
 Gets the value of this node, depending on its type.
 
virtual NodeType getNodeType () const =0
 An enum value representing the type of the underlying object.
 
virtual DOMNodegetParentNode () const =0
 Gets the parent of this node.
 
virtual DOMNodeListgetChildNodes () const =0
 Gets a DOMNodeList that contains all children of this node.
 
virtual DOMNodegetFirstChild () const =0
 Gets the first child of this node.
 
virtual DOMNodegetLastChild () const =0
 Gets the last child of this node.
 
virtual DOMNodegetPreviousSibling () const =0
 Gets the node immediately preceding this node.
 
virtual DOMNodegetNextSibling () const =0
 Gets the node immediately following this node.
 
virtual DOMNamedNodeMapgetAttributes () const =0
 Gets a DOMNamedNodeMap containing the attributes of this node (if it is an DOMElement) or null otherwise.
 
virtual DOMDocumentgetOwnerDocument () const =0
 Gets the DOMDocument object associated with this node.
 
virtual DOMNodecloneNode (bool deep) const =0
 Returns a duplicate of this node.
 
virtual DOMNodeinsertBefore (DOMNode *newChild, DOMNode *refChild)=0
 Inserts the node newChild before the existing child node refChild.
 
virtual DOMNodereplaceChild (DOMNode *newChild, DOMNode *oldChild)=0
 Replaces the child node oldChild with newChild in the list of children, and returns the oldChild node.
 
virtual DOMNoderemoveChild (DOMNode *oldChild)=0
 Removes the child node indicated by oldChild from the list of children, and returns it.
 
virtual DOMNodeappendChild (DOMNode *newChild)=0
 Adds the node newChild to the end of the list of children of this node.
 
virtual bool hasChildNodes () const =0
 This is a convenience method to allow easy determination of whether a node has any children.
 
virtual void setNodeValue (const XMLCh *nodeValue)=0
 Sets the value of the node.
 
virtual void normalize ()=0
 Puts all DOMText nodes in the full depth of the sub-tree underneath this DOMNode, including attribute nodes, into a "normal" form where only markup (e.g., tags, comments, processing instructions, CDATA sections, and entity references) separates DOMText nodes, i.e., there are neither adjacent DOMText nodes nor empty DOMText nodes.
 
virtual bool isSupported (const XMLCh *feature, const XMLCh *version) const =0
 Tests whether the DOM implementation implements a specific feature and that feature is supported by this node.
 
virtual const XMLChgetNamespaceURI () const =0
 Get the namespace URI of this node, or null if it is unspecified.
 
virtual const XMLChgetPrefix () const =0
 Get the namespace prefix of this node, or null if it is unspecified.
 
virtual const XMLChgetLocalName () const =0
 Returns the local part of the qualified name of this node.
 
virtual void setPrefix (const XMLCh *prefix)=0
 Set the namespace prefix of this node.
 
virtual bool hasAttributes () const =0
 Returns whether this node (if it is an element) has any attributes.
 
virtual bool isSameNode (const DOMNode *other) const =0
 Returns whether this node is the same node as the given one.
 
virtual bool isEqualNode (const DOMNode *arg) const =0
 Tests whether two nodes are equal.
 
virtual void * setUserData (const XMLCh *key, void *data, DOMUserDataHandler *handler)=0
 Associate an object to a key on this node.
 
virtual void * getUserData (const XMLCh *key) const =0
 Retrieves the object associated to a key on a this node.
 
virtual const XMLChgetBaseURI () const =0
 The absolute base URI of this node or null if undefined.
 
virtual short compareDocumentPosition (const DOMNode *other) const =0
 Compares the reference node, i.e.
 
virtual const XMLChgetTextContent () const =0
 WARNING: This method is known to be buggy and does not produce accurate results under a variety of conditions.
 
virtual void setTextContent (const XMLCh *textContent)=0
 This attribute removes any possible children this node may have and, if the new string is not empty or null, replaced by a single DOMText node containing the string this attribute is set to.
 
virtual const XMLChlookupPrefix (const XMLCh *namespaceURI) const =0
 Look up the prefix associated to the given namespace URI, starting from this node.
 
virtual bool isDefaultNamespace (const XMLCh *namespaceURI) const =0
 This method checks if the specified namespaceURI is the default namespace or not.
 
virtual const XMLChlookupNamespaceURI (const XMLCh *prefix) const =0
 Look up the namespace URI associated to the given prefix, starting from this node.
 
virtual void * getFeature (const XMLCh *feature, const XMLCh *version) const =0
 This method makes available a DOMNode's specialized interface.
 
virtual void release ()=0
 Called to indicate that this Node (and its associated children) is no longer in use and that the implementation may relinquish any resources associated with it and its associated children.
 

Protected Member Functions

Hidden constructors
 DOMText ()
 
 DOMText (const DOMText &other)
 
- Protected Member Functions inherited from DOMCharacterData
 DOMCharacterData ()
 
 DOMCharacterData (const DOMCharacterData &other)
 
- Protected Member Functions inherited from DOMNode
 DOMNode ()
 
 DOMNode (const DOMNode &)
 

Additional Inherited Members

- Public Types inherited from DOMNode
enum  NodeType {
  ELEMENT_NODE = 1 , ATTRIBUTE_NODE = 2 , TEXT_NODE = 3 , CDATA_SECTION_NODE = 4 ,
  ENTITY_REFERENCE_NODE = 5 , ENTITY_NODE = 6 , PROCESSING_INSTRUCTION_NODE = 7 , COMMENT_NODE = 8 ,
  DOCUMENT_NODE = 9 , DOCUMENT_TYPE_NODE = 10 , DOCUMENT_FRAGMENT_NODE = 11 , NOTATION_NODE = 12
}
 NodeType. More...
 
enum  DocumentPosition {
  DOCUMENT_POSITION_DISCONNECTED = 0x01 , DOCUMENT_POSITION_PRECEDING = 0x02 , DOCUMENT_POSITION_FOLLOWING = 0x04 , DOCUMENT_POSITION_CONTAINS = 0x08 ,
  DOCUMENT_POSITION_CONTAINED_BY = 0x10 , DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 0x20
}
 DocumentPosition: More...
 

Detailed Description

The DOMText interface inherits from DOMCharacterData and represents the textual content (termed character data in XML) of an DOMElement or DOMAttr.

If there is no markup inside an element's content, the text is contained in a single object implementing the DOMText interface that is the only child of the element. If there is markup, it is parsed into the information items (elements, comments, etc.) and DOMText nodes that form the list of children of the element.

When a document is first made available via the DOM, there is only one DOMText node for each block of text. Users may create adjacent DOMText 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 DOMNode merges any such adjacent DOMText objects into a single node for each block of text.

See also the Document Object Model (DOM) Level 2 Core Specification.

Constructor & Destructor Documentation

◆ DOMText() [1/2]

DOMText::DOMText ( )
protected

◆ DOMText() [2/2]

DOMText::DOMText ( const DOMText & other)
protected

◆ ~DOMText()

virtual DOMText::~DOMText ( )
virtual

Destructor.

Member Function Documentation

◆ getIsElementContentWhitespace()

virtual bool DOMText::getIsElementContentWhitespace ( ) const
pure virtual

Returns whether this text node contains element content whitespace, often abusively called "ignorable whitespace".

The text node is determined to contain whitespace in element content during the load of the document or if validation occurs while using DOMDocument::normalizeDocument().

Since
DOM Level 3

◆ getWholeText()

virtual const XMLCh * DOMText::getWholeText ( ) const
pure virtual

Returns all text of DOMText nodes logically-adjacent text nodes to this node, concatenated in document order.

Since
DOM Level 3

◆ isIgnorableWhitespace()

virtual bool DOMText::isIgnorableWhitespace ( ) const
pure virtual

Non-standard extension.

Return true if this node contains ignorable whitespaces only.

Returns
True if this node contains ignorable whitespaces only.

◆ replaceWholeText()

virtual DOMText * DOMText::replaceWholeText ( const XMLCh * content)
pure virtual

Substitutes the a specified text for the text of the current node and all logically-adjacent text nodes.


This method returns the node in the hierarchy which received the replacement text, which is null if the text was empty or is the current node if the current node is not read-only or otherwise is a new node of the same type as the current node inserted at the site of the replacement. All logically-adjacent text nodes are removed including the current node unless it was the recipient of the replacement text.
Where the nodes to be removed are read-only descendants of an DOMEntityReference, the DOMEntityReference must be removed instead of the read-only nodes. If any DOMEntityReference to be removed has descendants that are not DOMEntityReference, DOMText, or DOMCDATASection nodes, the replaceWholeText method must fail before performing any modification of the document, raising a DOMException with the code NO_MODIFICATION_ALLOWED_ERR.

Parameters
contentThe content of the replacing DOMText node.
Returns
The DOMText node created with the specified content.
Exceptions
DOMExceptionNO_MODIFICATION_ALLOWED_ERR: Raised if one of the DOMText nodes being replaced is readonly.
Since
DOM Level 3

◆ splitText()

virtual DOMText * DOMText::splitText ( XMLSize_t offset)
pure virtual

Breaks this node into two nodes at the specified offset, keeping both in the tree as siblings.

After being split, this node will contain all the content up to the offset point. A new node of the same type, which contains all the content at and after the offset point, is returned. If the original node had a parent node, the new node is inserted as the next sibling of the original node. When the offset is equal to the length of this node, the new node has no data.

Parameters
offsetThe 16-bit unit offset at which to split, starting from 0.
Returns
The new node, of the same type as this node.
Exceptions
DOMExceptionINDEX_SIZE_ERR: Raised if the specified offset is negative or greater than the number of 16-bit units in data.
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
Since
DOM Level 1

The documentation for this class was generated from the following file: