The data
attribute of the DOMText
node holds
* the text that is contained by the CDATA section. Note that this may
* contain characters that need to be escaped outside of CDATA sections and
* that, depending on the character encoding ("charset") chosen for
* serialization, it may be impossible to write out some characters as part
* of a CDATA section.
*
The DOMCDATASection
interface inherits from the
* DOMCharacterData
interface through the DOMText
* interface. Adjacent DOMCDATASection
nodes are not merged by use
* of the normalize
method of the DOMNode
interface.
* Because no markup is recognized within a DOMCDATASection
,
* character numeric references cannot be used as an escape mechanism when
* serializing. Therefore, action needs to be taken when serializing a
* DOMCDATASection
with a character encoding where some of the
* contained characters cannot be represented. Failure to do so would not
* produce well-formed XML.One potential solution in the serialization
* process is to end the CDATA section before the character, output the
* character using a character reference or entity reference, and open a new
* CDATA section for any further characters in the text node. Note, however,
* that some code conversion libraries at the time of writing do not return
* an error or exception when a character is missing from the encoding,
* making the task of ensuring that data is not corrupted on serialization
* more difficult.
*
See also the Document Object Model (DOM) Level 2 Core Specification. * * @since DOM Level 1 */ class CDOM_EXPORT DOMCDATASection: public DOMText { protected: // ----------------------------------------------------------------------- // Hidden constructors // ----------------------------------------------------------------------- /** @name Hidden constructors */ //@{ DOMCDATASection() {}; //@} private: // ----------------------------------------------------------------------- // Unimplemented constructors and operators // ----------------------------------------------------------------------- /** @name Unimplemented constructors and operators */ //@{ DOMCDATASection(const DOMCDATASection &); DOMCDATASection & operator = (const DOMCDATASection &); //@} public: // ----------------------------------------------------------------------- // All constructors are hidden, just the destructor is available // ----------------------------------------------------------------------- /** @name Destructor */ //@{ /** * Destructor * */ virtual ~DOMCDATASection() {}; //@} }; XERCES_CPP_NAMESPACE_END #endif