Spec-Zone.ru › OpenJDK 25

Интерфейс CDATASection

Все суперинтерфейсы:
CharacterData, Node, Text
public interface CDATASection extends Text
Секции 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 для остальных символов текстового узла. Однако обратите внимание, что некоторые библиотеки преобразования кодировок на момент написания документа не сообщают об ошибке и не выбрасывают исключение, если символ отсутствует в кодировке, что затрудняет обеспечение сохранности данных при сериализации.

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

С версии:
1.4, DOM уровня 2

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

Поля, объявленные в интерфейсе 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

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

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

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

Методы, объявленные в интерфейсе 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

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

getWholeText, isElementContentWhitespace, replaceWholeText, splitText

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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://docs.oracle.com/en/java/javase/25/docs/api/java.xml/org/w3c/dom/CDATASection.html

Spec-Zone.ru

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