Глава 4.5. Дополнительные интерфейсы базовой моделиВ этой главе мы рассматриваем дополнительные интерфейсы базовой модели DOM. Эти интерфейсы предназначены для XML-документов, поэтому читатели, которых интересует только работа с HTML-документами, могут эту главу безболезненно пропустить. Ее содержимое нам понадобится, когда мы дойдем до описания XML DOM. 4.5.1. Секция CDATA: интерфейс CDATASectionПоддержка: Интерфейс CDATASection реализует секции CDATA XML-документов. Он наследует все свойства и методы интерфейса Text и содержит текст секции CDATA, т. е. все, что находится между ограничителями <![CDATA[ и ]]>. Собственных свойств и методов у него нет. Основным отличием узлов данного типа от узлов типа Text является то, что при нормализации узлов методом Node.normalize соседние секции CDATA не сливаются в одну секцию. 4.5.2. Тип документа: интерфейс DocumentTypeПоддержка: Каждый объект типа Document имеет атрибут doctype, значением которого является либо null, либо объект DocumentType. Интерфейс DocumentType обеспечивает доступ ко всем разделам и нотациям, определенным для данного документа. DOM 2 не допускает редактирования узлов этого типа; они предназначены только для чтения. Интерфейс DocumentType наследует методы и свойства интерфейса Node и имеет дополнительно следующие свойства.
Свойство entitiesСинтаксис: объект.entities Изменяемое: нет Поддержка: Свойство entities возвращает объект типа NamedNodeMap, содержащий список всех деклараций разделов в документе, как внутренних, так и внешних. Параметрические разделы в список не включаются. Каждому разделу соответствует объект типа Entity. Пример: alert(document.doctype.entities.length); Свойство internalSubsetСинтаксис: объект.internalSubset Изменяемое: нет Поддержка: Свойство internalSubset возвращает текст внутреннего подмножества DTD в виде строки. Фактически возвращаемое значение определяется конкретной реализацией XML-процессора. Пример: alert(document.doctype.internalSubset); Свойство nameСинтаксис: объект.name Изменяемое: нет Поддержка: Свойство name возвращает строку, содержащую имя DTD, т. е. имя, непосредственно следующее за ключевым словом !DOCTYPE. Пример: alert(document.doctype.name); Свойство notationsСинтаксис: объект.notations Изменяемое: нет Поддержка: Свойство notations возвращает объект типа NamedNodeMap, содержащий список всех деклараций нотаций в документе. Каждой нотации соответствует объект типа Notation. Пример: alert(document.doctype.notations.length); Свойство publicIdСинтаксис: объект.publicId Изменяемое: нет Поддержка: Свойство publicId возвращает строку, содержащую публичный идентификатор внешнего подмножества DTD. Пример: alert(document.doctype.publicId); Свойство systemIdСинтаксис: объект.systemId Изменяемое: нет Поддержка: Свойство systemId возвращает строку, содержащую системный идентификатор внешнего подмножества DTD. Пример: alert(document.doctype.systemId); 4.5.3. Нотация: интерфейс NotationПоддержка: Интерфейс Notation соответствует декларации нотации в DTD XML-документа. DOM 2 не допускает редактирования узлов этого типа; они предназначены только для чтения. Интерфейс Notation наследует методы и свойства интерфейса Node и имеет дополнительно следующие свойства (имя нотации хранится в свойстве nodeName).
Свойство publicIdСинтаксис: объект.publicId Изменяемое: нет Поддержка: Свойство publicId возвращает строку, содержащую публичный идентификатор нотации, или null, если его нет. Пример: alert(document.doctype.notations[0].publicId); Свойство systemIdСинтаксис: объект.systemId Изменяемое: нет Поддержка: Свойство systemId возвращает строку, содержащую системный идентификатор нотации, или null, если его нет. Пример: alert(document.doctype.notations[0].systemId); 4.5.4. Раздел: интерфейс EntityПоддержка: Интерфейс Entity соответствует разделу XML-документа. DOM 2 не допускает редактирования узлов этого типа; они предназначены только для чтения. Интерфейс Entity наследует методы и свойства интерфейса Node и имеет дополнительно следующие свойства (имя раздела хранится в свойстве nodeName).
Свойство notationNameСинтаксис: объект.notationName Изменяемое: нет Поддержка: Свойство notationName возвращает строку, содержащую нотацию раздела для неанализируемых разделов или null, если раздел анализируемый. Пример: alert(document.doctype.entities[0].notationName); Свойство publicIdСинтаксис: объект.publicId Изменяемое: нет Поддержка: Свойство publicId возвращает строку, содержащую публичный идентификатор раздела, или null, если его нет. Пример: alert(document.doctype.entities[0].publicId); Свойство systemIdСинтаксис: объект.systemId Изменяемое: нет Поддержка: Свойство systemId возвращает строку, содержащую системный идентификатор раздела, или null, если его нет. Пример: alert(document.doctype.entities[0].systemId); 4.5.5. Ссылка на раздел: интерфейс EntityReferenceПоддержка: Интерфейс EntityReference реализует ссылки на разделы в XML-документах. Он наследует все свойства и методы интерфейса Node; собственных свойств и методов у него нет. Отметим, что специальные символы XML- и HTML-документов, которые являются частным случаем ссылок, всегда заменяются в процессе синтаксического анализа документа на соответствующие символы Unicode. Что касается остальных ссылок разделов, то момент их замены на соответствующие текстовые строки зависит от конкретного XML-процессора. 4.5.6. Директива: интерфейс ProcessingInstructionПоддержка: Интерфейс ProcessingInstruction соответствует директивам в XML-документах. Он наследует все свойства и методы интерфейса Node. Кроме того, он имеет следующие свойства.
Свойство dataСинтаксис: объект.data Изменяемое: да Исключения: NO_MODIFICATION_ALLOWED_ERR Поддержка: Свойство data возвращает или задает строку, содержащую текст директивы, т. е. все, что содержится в ней от первого пробела до ограничителя ?>. Например, для директивы <?xml version="1.0"?> это свойство вернет строку 'version="1.0"'. Значение этого свойства совпадает со значением свойства nodeValue. Свойство sheetСинтаксис: объект.sheet Изменяемое: нет Поддержка: Свойство sheet возвращает указатель на объект StyleSheet, соответствующий внешней таблице стилей, если это директива xml-stylesheet и если данная реализация DOM поддерживает таблицы стилей. Свойство targetСинтаксис: объект.target Изменяемое: нет Поддержка: Свойство target возвращает строку, содержащую имя директивы, т. е. все, что содержится в ней до первого пробела. Например, для директивы <?xml version="1.0"?> это свойство вернет строку 'xml'. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HIVE: All information for read only. Please respect copyright! |
Advertising: |
|
![]() ![]() |