Spec-Zone.ru › OpenJDK 24

Интерфейс CDATASection

Все суперинтерфейсы:
CharacterData, Node, Text
public interface CDATASection extends Text
Разделы CDATA используются для экранирования блоков текста, содержащих символы, которые в противном случае рассматриваются как разметка. Единственным разделителем, распознаваемым в разделе CDATA, является строка "]]>", которая завершает раздел CDATA. Разделы CDATA не могут быть вложены. Их основная цель — включение материала, такого как фрагменты XML, без необходимости экранирования всех разделителей.

Атрибут CharacterData.data содержит текст, содержащийся в разделе CDATA. Обратите внимание, что он может содержать символы, которые необходимо экранировать за пределами разделов CDATA, и что, в зависимости от выбранного кодирования символов ("charset") для сериализации, некоторые символы могут быть невозможно записать как часть раздела CDATA.

Интерфейс CDATASection унаследован от интерфейса CharacterData через интерфейс Text. Смежные узлы CDATASection не объединяются с помощью метода normalize интерфейса Node.

Лексическая проверка содержимого раздела CDATA не выполняется, и поэтому в содержимом может присутствовать последовательность символов "]]>", что является незаконным в разделе CDATA согласно разделу 2.7 [XML 1.0]. Присутствие этой последовательности символов должно вызывать ошибку при сериализации или раздел cdata должен быть разделен перед сериализацией (см. также параметр "split-cdata-sections" в интерфейсе DOMConfiguration).

Примечание: Поскольку в CDATASection не распознаётся разметка, числовые ссылки на символы не могут использоваться в качестве механизма экранирования при сериализации. Следовательно, необходимо принять меры при сериализации CDATASection с кодировкой символов, где некоторые из содержащихся символов не могут быть представлены. Отсутствие таких мер приведет к некорректному XML.

Примечание: Одним из возможных решений в процессе сериализации является завершение раздела CDATA перед символом, вывод символа с помощью числовой ссылки или ссылки на сущность, и открытие нового раздела CDATA для любых последующих символов в узле текста. Однако, по состоянию на момент написания, некоторые библиотеки преобразования кода не возвращают ошибку или исключение, когда символ отсутствует в кодировке, что затрудняет задачу обеспечения того, чтобы данные не были повреждены при сериализации.

См. также Спецификацию уровня 3 ядра объектной модели документа (DOM).

С:
1.4, DOM Level 2

Краткое описание полей

Поля, объявленные в интерфейсе org.w3c.dom.Node

ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE

Краткое описание методов

Методы, объявленные в интерфейсе org.w3c.dom.CharacterData

appendData, deleteData, getData, getLength, insertData, replaceData, setData, substringData

Методы, объявленные в интерфейсе org.w3c.dom.Node

appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData

Методы, объявленные в интерфейсе org.w3c.dom.Text

getWholeText, isElementContentWhitespace, replaceWholeText, splitText

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.xml/org/w3c/dom/CDATASection.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API