- •Document Object Model Объектная модель документа
- •Цели занятия – 1
- •Модели документов
- •"Фабричные методы" – Factory Methods
- •Древовидная структура документа XML
- •Объекты в документе XML
- •Создание объекта XML
- •Пример проверки документа
- •Вывод результата работы Примера
- •Образец документа XML
- •Базовые объекты XML DOM
- •интерфейсов XML DOM и
- •Объект DOMDocument
- •Свойство async
- •Свойство Attribute
- •Свойство baseName
- •Свойство childNodes
- •Свойство documentElement
- •методов объекта DOMdocument
- •Метод createNode
- •Метод appendchild
- •Событие ondataavailable
- •Объект XMLDOMNode
- •Пример использования объекта XMLDOMNode
- •Свойства объекта XMLDOMNode
- •Свойство lastChild
- •Свойство nextSibling
- •Вывод результата работы примера
- •Свойство Xml
- •Методы объекта XMLDOMNode
- •Метод selectNodes
- •Объект XMLDOMNodeList
- •Свойство length
- •Вывод результата работы Примера
- •Метод nextNode
- •Объект
- •Методы объекта XMLDOMNamedNodeMap
- •Объект XMLDOMParseError
- •Свойство line
- •Свойство Linepos
- •Свойство srcText
- •Пример использования свойства srcText
- •Объект XMLDOMAttribute
- •Свойство nodeType
- •Пример использования свойства nodeType
- •Свойство value
- •Свойство text
- •Свойство ownerDocuemnt
- •свойства ownerDocument
- •Объект XMLDOMCDATASection
- •Свойство specified
- •Пример использования свойства specified
- •Метод splitText
- •Метод substringData
- •Пример использования метода substringData
- •Объект XMLDOMDocumentType
- •Свойства entities и name
- •Свойство nodeTypeString
- •Пример использования свойства nodeTypeString
- •Метод replaceChild
- •Метод removeChild
- •Объект XMLDOMEntity
- •Свойство notationName
- •Свойства prefix и publicId
- •Свойство systemId
- •Метод transformNode
- •Объект XMLDOMProcessingInstruc
- •Свойство parsed
- •Пример использования свойства parsed
- •Метод cloneNode
- •SAX против DOM
- •Подведение итогов – I
- •Подведение итогов – II
Document Object Model Объектная модель документа
Цели занятия – 1
Определение DOM
Определения различных моделей DOM
Линейная (Linear) модель
Древовидная (Tree) модель
Объектная (Object) модель
Описание древовидной структуры документа XML
Создание объекта XML Document
Обработка документа XML с помощью свойств, методов и событий модели DOM
Модели документов
Ниже перечислены три модели документа:
Линейная (Linear) модель
Древовидная (Tree) модель
Объектная (Object) модель
В линейной модели документа файл считывается последовательно, символ за символом, строка за строкой
В древовидной модели файл считывается от корня к ветвям, затем к другим подветвям
В объектной модели каждая часть файла рассматривается, как объект
"Фабричные методы" – Factory Methods
Набор методов, которые помогают создавать сложный составной документ "с нуля", называются "фабричными методами" – factory methods
Они предложены в спецификации DOM
Древовидная структура документа XML
Модель DOM преобразует правильно сформированный документ XML в древовидную структуру
Документ XML
Элемент Sample
<sample>
<start> Hello XML </start>
<end>Goodbye HTML </end>
</sample
Элемент |
|
Элемент |
start |
|
end |
Текст |
Текст |
Объекты в документе XML
Пример:
Документ XML Sample
<sample>
<start> Hello XML </start>
<end> Goodbye HTML </end>
</sample>
Объекты, входящие в документ XML Sample
•Объект document
•Объект ‘sample’
•Объект ‘start’
•Текстовый объект ‘Goodbye HTML’
•Объект ‘end’
•Текстовый объект ‘Hello XML’
Создание объекта XML
Document
Синтаксис, используемый для создания документов XML:
Dim xmlDoc
Set xmlDoc=CreateObject(“Microsoft.XMLDOM”)
Документ XML будет загружен, как объект document, если он является правильно сформированным
Синтаксический анализатор MSXML загружает документ XML только в том случае, если он правильно сформирован и проверен на соответствие DTD, если последний имеется
Пример проверки документа
<script language="vbscript"> Dim xmlDoc
Set xmlDoc = CreateObject("microsoft.xmlDOM") xmlDoc.async = False xmlDoc.load("sample1.xml")
If xmlDoc.parseError.errorcode <> 0 Then MsgBox xmlDoc.parseError.reason
Else
MsgBox xmlDoc.documentElement.xml End If
</script>
Метод parseError используется для проверки документа. В случае возникновения ошибки документ не будет загружен.