Разделы презентаций


Презентация 14.ppt

Содержание

Цели занятия – 1Определение DOMОпределения различных моделей DOMЛинейная (Linear) модельДревовидная (Tree) модельОбъектная (Object) модельОписание древовидной структуры документа XMLСоздание объекта XML DocumentОбработка документа XML с помощью свойств, методов и событий модели DOM

Слайды и текст этой презентации

Слайд 1Document Object Model Объектная модель документа

Document Object Model Объектная модель документа

Слайд 2Цели занятия – 1
Определение DOM
Определения различных моделей DOM
Линейная (Linear) модель
Древовидная

(Tree) модель
Объектная (Object) модель
Описание древовидной структуры документа XML
Создание объекта XML

Document
Обработка документа XML с помощью свойств, методов и событий модели DOM
Цели занятия – 1Определение DOMОпределения различных моделей DOMЛинейная (Linear) модельДревовидная (Tree) модельОбъектная (Object) модельОписание древовидной структуры документа

Слайд 3Модели документов
Ниже перечислены три модели документа:
Линейная (Linear) модель
Древовидная (Tree) модель
Объектная

(Object) модель
В линейной модели документа файл считывается последовательно, символ за

символом, строка за строкой
В древовидной модели файл считывается от корня к ветвям, затем к другим подветвям
В объектной модели каждая часть файла рассматривается, как объект
Модели документовНиже перечислены три модели документа:Линейная (Linear) модельДревовидная (Tree) модельОбъектная (Object) модельВ линейной модели документа файл считывается

Слайд 4"Фабричные методы" – Factory Methods
Набор методов, которые помогают создавать сложный

составной документ "с нуля", называются "фабричными методами" – factory methods
Они

предложены в спецификации DOM

Слайд 5Древовидная структура документа XML
Модель DOM преобразует правильно сформированный документ XML

в древовидную структуру
Документ XML

Hello XML
Goodbye HTML


Текст

Элемент Sample

Элемент start

Элемент end

Текст



Древовидная структура документа XMLМодель DOM преобразует правильно сформированный документ XML в древовидную структуруДокумент XML  Hello XML

Слайд 6Объекты в документе XML
Документ XML Sample

Hello XML


Goodbye HTML

Объекты, входящие в документ XML Sample
Объект

document
Объект ‘sample’
Объект ‘start’
Текстовый объект ‘Goodbye HTML’
Объект ‘end’
Текстовый объект ‘Hello XML’

Пример:

Объекты в документе XMLДокумент XML Sample  Hello XML  Goodbye HTML Объекты, входящие в документ XML

Слайд 7Создание объекта XML Document
Синтаксис, используемый для создания документов XML:
Dim xmlDoc
Set

xmlDoc=CreateObject(“Microsoft.XMLDOM”)
Документ XML будет загружен, как объект document, если он является

правильно сформированным
Синтаксический анализатор MSXML загружает документ XML только в том случае, если он правильно сформирован и проверен на соответствие DTD, если последний имеется
Создание объекта XML DocumentСинтаксис, используемый для создания документов XML:Dim xmlDocSet xmlDoc=CreateObject(“Microsoft.XMLDOM”)Документ XML будет загружен, как объект document,

Слайд 8Пример проверки документа

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

Метод parseError используется для проверки документа. В случае возникновения ошибки документ не будет загружен.

Пример проверки документа   Dim xmlDoc   Set xmlDoc = CreateObject(

Слайд 9Вывод результата работы Примера

Вывод результата работы Примера

Слайд 10Образец документа XML

Образец документа XML

Слайд 11Базовые объекты XML DOM
Базовые объекты XML DOM: эти объекты используются

для поддержки пространств имён, типов данных, схем XML, операций XSL,

асинхронной загрузки и для сохранения документов
Объекты DOM: Эти объекты используются для представления реализаций интерфейсов XML DOM
Базовые объекты XML DOMБазовые объекты XML DOM: эти объекты используются для поддержки пространств имён, типов данных, схем

Слайд 12Базовые объекты интерфейсов XML DOM и объекты DOM

Базовые объекты интерфейсов XML DOM и объекты DOM

Слайд 13Объект DOMDocument
Представляет самый верхний уровень исходного кода XML
Включает методы и

свойства, используемые для получения или создания всех других объектов XML
Создаёт

только один объект: document
Некоторые свойства объекта DOMDocument:
async
attributes
baseName
childNodes
documentElement
Некоторые методы объекта DOMDocument:
createNode
appendChild
Объект DOMDocumentПредставляет самый верхний уровень исходного кода XMLВключает методы и свойства, используемые для получения или создания всех

Слайд 14Свойство async
Идёт загрузка

Управление возвращается

Вызванный документ
Код VB продолжает выполнение без

ожидания окончания загрузки
async=true
Идёт загрузка
Управление не возвращается

Вызванный документ
Код VB ожидает окончания

загрузки

async=false

Показывает, должен ли документ XML загружаться асинхронно или синхронно

Свойство asyncИдёт загрузкаУправление возвращается Вызванный документКод VB продолжает выполнение без ожидания окончания загрузкиasync=trueИдёт загрузкаУправление не возвращаетсяВызванный документКод

Слайд 15Свойство Attribute
Свойство предназначено только для чтения
Возвращает объект ‘XMLDOMNamedNodeMap’ для тех

узлов, которые могут возвращать атрибуты
XMLDOMNamedNodeMap является интерфейсом XML, предназначенным специально

для работы с атрибутами

Пример:

Свойство AttributeСвойство предназначено только для чтенияВозвращает объект ‘XMLDOMNamedNodeMap’ для тех узлов, которые могут возвращать атрибутыXMLDOMNamedNodeMap является интерфейсом

Слайд 16Свойство baseName
Свойство предназначено только для чтения
Всегда возвращает не пустую строку
Пример:

language="vbscript">
Dim xmlDoc
Dim MyStr
Set xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.load("candidate.xml")

MyStr = xmldoc.documentElement.childNodes.item(0).baseName
MsgBox MyStr

Свойство baseNameСвойство предназначено только для чтенияВсегда возвращает не пустую строкуПример: Dim xmlDoc Dim MyStr Set xmlDoc =

Слайд 17Свойство childNodes
Свойство только для чтения
Пример:

Dim xmlDoc
Dim root
Dim oList
Dim Item
Set

xmlDoc
=CreateObject("microsoft.xmldom")
xmlDoc.load("candidate.xml")
Set root = xmldoc.documentElement
Set oList = root.childNodes
For Each Item

in oList
document.write(Item.xml+"
")
Next



Свойство childNodesСвойство только для чтенияПример:Dim xmlDocDim rootDim oListDim ItemSet xmlDoc =CreateObject(

Слайд 18Свойство documentElement
Это корневой элемент документа
Это свойство предназначено для чтения/записи
Возвращает объект

‘XMLDOMElement’, который представляет корень дерева документа XML
Пример:

Dim root
Dim xmlDoc
Set

xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.async = False
xmlDoc.load("candidate.xml")
Set root = xmlDoc.documentElement
For i = 0 To (root.childNodes.length -1)
document.write(root.childNodes.item(i).childNodes.item(0)
.text + "
")
Next

Свойство documentElementЭто корневой элемент документаЭто свойство предназначено для чтения/записиВозвращает объект ‘XMLDOMElement’, который представляет корень дерева документа XMLПример:Dim

Слайд 19Пример использования методов объекта DOMdocument


language="vbs">
Dim xmlDoc
Dim

root
Dim newNode
Set xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.async = False
xmlDoc.load("candidate.xml")
Set root = xmlDoc.documentElement
MsgBox root.xml
Set newNode = xmlDoc.createNode (1, "SampleNode", "")
root.appendChild(newNode)
MsgBox root.xml



Пример использования методов объекта DOMdocument        Dim xmlDoc

Слайд 20Метод createNode
Создаёт узел, используя заданный тип, имя и пространство имён
Синтаксис:
objNode=oDocument.createNode(type,name,namespaceURI)
Параметр

type: однозначно идентифицирует тип узла
Параметр name: строка, содержащая значение для

свойства ‘nodeName’ нового узла
namespaceURI: строка, определяющая пространство имён URI
Узел создаётся в контексте указанного пространства имён
Если пространство имён не задано, то узел создаётся в пространстве имён документа
Метод createNodeСоздаёт узел, используя заданный тип, имя и пространство имёнСинтаксис:objNode=oDocument.createNode(type,name,namespaceURI)Параметр type: однозначно идентифицирует тип узлаПараметр name: строка,

Слайд 21Метод appendchild
Добавляет новый узел
Возвращает новый "дочерний" узел, успешно добавленный к

списку
Пример:

Dim xmlDoc

Dim root
Dim newNode
Set xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.async = False
xmlDoc.load("candidate.xml")
Set root = xmlDoc.documentElement
MsgBox root.xml
Set newNode = xmlDoc.createNode (1, "SampleNode", "")
root.appendChild(newNode)
MsgBox root.xml

Метод appendchildДобавляет новый узелВозвращает новый

Слайд 22Событие ondataavailable
Сообщает о доступности данных в документе XML
При работе с

асинхронными данными удобно начать обработку параллельно с загрузкой, сразу после

того, как данные становятся доступными
Генерируется каждый раз, когда поступает новая порция данных
Свойство ‘readstate’ определяет несколько состояний, которые характеризуют текущий статус асинхронной загрузки
Событие ondataavailableСообщает о доступности данных в документе XMLПри работе с асинхронными данными удобно начать обработку параллельно с

Слайд 23Объект XMLDOMNode
Объект XMLDOMNode
Некоторые объекты DOM, которые являются производными от объекта

XMLDOMNODE
DOMDocument
XTLRuntime
XMLDOMAttribute
XMLDOMCDATASection
XMLDOMComment
XMLDOMDocumentType

Объект XMLDOMNodeОбъект XMLDOMNodeНекоторые объекты DOM, которые являются производными от объекта XMLDOMNODEDOMDocumentXTLRuntimeXMLDOMAttributeXMLDOMCDATASectionXMLDOMCommentXMLDOMDocumentType

Слайд 24Пример использования объекта XMLDOMNode



Dim cNode
Set xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.async =

false
xmlDoc.load("candidate.xml")
Set cNode = xmlDoc.documentElement.childNodes.item(0)
MsgBox cNode.xml



Пример использования объекта XMLDOMNodeDim cNodeSet xmlDoc = CreateObject(

Слайд 25Свойства объекта XMLDOMNode

Свойства объекта XMLDOMNode

Слайд 26Свойство lastChild
Свойство возвращает последний дочерний узел
Пример:



Dim xmlDoc
Dim currNode
Set xmlDoc

= CreateObject("microsoft.xmldom")
xmlDoc.load("candidate.xml")
Set currNode = xmlDoc.documentElement.lastchild
MsgBox currNode.xml



Свойство lastChildСвойство возвращает последний дочерний узелПример:Dim xmlDocDim currNodeSet xmlDoc = CreateObject(

Слайд 27Свойство nextSibling
Содержит следующий соседний узел для текущего узла в списке

потомков родителя
Пример:

Dim xmlDoc
Dim cNode
Dim nextNode
Set xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.load("candidate.xml")
Set cNode

= xmlDoc.documentElement.childNodes.item(0)
Set nextNode = cNode.nextSibling
MsgBox nextNode.xml

Свойство nextSiblingСодержит следующий соседний узел для текущего узла в списке потомков родителяПример:Dim xmlDocDim cNodeDim nextNodeSet xmlDoc =

Слайд 28Вывод результата работы примера

Вывод результата работы примера

Слайд 29Свойство Xml
Содержит XML-представление текущего кода и всех его потомков
Свойство предназначено

только для чтения
Всегда возвращает строку в кодировке UNICODE, которая отменяет

исходную кодировку атрибута


выглядит в свойстве xml, как:

Свойство XmlСодержит XML-представление текущего кода и всех его потомковСвойство предназначено только для чтенияВсегда возвращает строку в кодировке

Слайд 30Методы объекта XMLDOMNode

Методы объекта XMLDOMNode

Слайд 31Метод selectNodes
Возвращает список найденных (совпавших с образцом) узлов в объект

XMLDOMNodeList
Пример:



Set xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.async = False
xmlDoc.load("candidate.xml")
Set oNList = xmlDoc.documentElement.selectNodes("PERSON/NAME")
MsgBox

oNList.length



Метод selectNodesВозвращает список найденных (совпавших с образцом) узлов в объект XMLDOMNodeListПример:Set xmlDoc = CreateObject(

Слайд 32Объект XMLDOMNodeList
Поддерживает итерацию в дополнение к индексированному доступу
Коллекция список узлов

работает "в прямом эфире", так как все изменения, добавления и

удаления немедленно отражаются в этой коллекции
Объект XMLDOMNodeListПоддерживает итерацию в дополнение к индексированному доступуКоллекция список узлов работает

Слайд 33Свойство length
Представляет количество экземпляров в коллекции
Это свойство предназначено только для

чтения
Пример:



Dim xmlDoc
Dim

objNList
Set xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.load("candidate.xml")
Set objNList = xmlDoc.getElementsByTagName("PERSON")
For i=0 To (objNList.length -1)
MsgBox (objNList.item(i).text)
Next



Свойство lengthПредставляет количество экземпляров в коллекцииЭто свойство предназначено только для чтенияПример:     Dim xmlDoc

Слайд 34Вывод результата работы Примера





Вывод результата работы Примера

Слайд 35Метод nextNode
Возвращает следующий узел в коллекции
Возвращает значение NULL, если следующий

узел отсутствует
Изначально итератор устанавливается в ‘0’, поэтому первый вызов ‘nextNode’

возвращает первый узел в списке

Пример:

Метод nextNodeВозвращает следующий узел в коллекцииВозвращает значение NULL, если следующий узел отсутствуетИзначально итератор устанавливается в ‘0’, поэтому

Слайд 36Объект XMLDOMNamedNodeMap
Ещё одна коллекция объектов в модели DOM
Возможен доступ по

индексу
Используется для итерации по атрибутам для заданного элемента
Любое изменение в

узле немедленно отображается в коллекции, например, удаление или добавление узлов

Свойства XMLDOMNamedNodeMap

Объект XMLDOMNamedNodeMapЕщё одна коллекция объектов в модели DOMВозможен доступ по индексуИспользуется для итерации по атрибутам для заданного

Слайд 37Методы объекта XMLDOMNamedNodeMap
Метод getNamedItem Method: Возвращает объект XMLDOMNode для заданного

атрибута
Синтаксис:
varXMLDOMNode=varXMLDOMNode.getNamedITEM(Aname)
Метод removeNamedItem: Возвращает узел, удалённый из коллекции
Синтаксис:
varXMLDOMNode = varXMLDOMNamedNodeMap.removeNamedItem(Aname)

Методы объекта XMLDOMNamedNodeMapМетод getNamedItem Method: Возвращает объект XMLDOMNode для заданного атрибутаСинтаксис:varXMLDOMNode=varXMLDOMNode.getNamedITEM(Aname)Метод removeNamedItem: Возвращает узел, удалённый из коллекцииСинтаксис:varXMLDOMNode

Слайд 38Объект XMLDOMParseError
Возвращает информацию о последней синтаксической ошибке
Информация включает номер ошибки,

номер строки, позицию символа и текстовое описание

Объект XMLDOMParseErrorВозвращает информацию о последней синтаксической ошибкеИнформация включает номер ошибки, номер строки, позицию символа и текстовое описание

Слайд 39Свойство line
Пример:

Dim xmlDoc
Set xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.async = False
xmlDoc.load("candidate1.xml")
If xmlDoc.parseError.errorcode

0 Then
MsgBox ("A parse error occurred on line "

& xmlDoc.parseError.line)
Else
MsgBox xmlDoc.documentElement.xml
End If

Определяет номер строки, которая содержит ошибку



Вывод

Свойство lineПример:Dim xmlDocSet xmlDoc = CreateObject(

Слайд 40Свойство Linepos
Содержит позицию символа в строке, где возникла ошибка
Это свойство

предназначено только для чтения
Пример:

Dim xmlDoc
Set xmlDoc = CreateObject("microsoft.xmlDOM")
xmlDoc.async =

False
xmlDoc.load("candidate1.xml")
If xmlDoc.parseError.errorcode <> 0 Then
MsgBox ("A parse error occurred on line " & xmlDoc.parseError.line & " at position " & xmlDoc.parseError.linepos)
Else MsgBox xmlDoc.documentElement.xml
End If

Свойство LineposСодержит позицию символа в строке, где возникла ошибкаЭто свойство предназначено только для чтенияПример:Dim xmlDocSet xmlDoc =

Слайд 41Свойство srcText
Возвращает полный текст строки, которая содержит ошибку
Это свойство предназначено

только для чтения
Возвращает пустую строку, если ошибка возникла из-за того,

что документ не является правильно сформированным, и ошибка не может быть позиционирована в конкретной строке
Свойство srcTextВозвращает полный текст строки, которая содержит ошибкуЭто свойство предназначено только для чтенияВозвращает пустую строку, если ошибка

Слайд 42Пример использования свойства srcText



Dim xmlDoc
Set xmlDoc = CreateObject("microsoft.xmlDOM")
xmlDoc.async =

False
xmlDoc.load("candidate1.xml")
If xmlDoc.parseError.errorcode 0 Then
MsgBox xmlDoc.parseError.srcText
Else MsgBox

xmlDoc.documentElement.xml
End If



Вывод

Пример использования свойства srcTextDim xmlDocSet xmlDoc = CreateObject(

Слайд 43Представляет атрибут элемента
Атрибуты – это свойства самого элемента, но не

дочерних узлов этого элемента
Атрибуты считаются свойствами ассоциированных с ними элементов,

а не отдельных и независимых элементов
Свойства объекта parentNode, previousSibiling, nextsibiling имеют значение Null

Объект XMLDOMAttribute

Представляет атрибут элементаАтрибуты – это свойства самого элемента, но не дочерних узлов этого элементаАтрибуты считаются свойствами ассоциированных

Слайд 44Свойство nodeType
Определяет тип узла XML DOM
Свойство предназначено только для чтения
Свойство

‘nodeTypeString’ возвращает тип узла в виде строки
Синтаксис:

xValue=oXMLNode.nodeType
Допустимые значения для свойства nodeType:
NODE_ELEMENT(1)
NODE_ATTRIBUTE(2)
NODE_TEXT(3)
Свойство nodeTypeОпределяет тип узла XML DOMСвойство предназначено только для чтенияСвойство ‘nodeTypeString’ возвращает тип узла в виде строкиСинтаксис:

Слайд 45
Dim xmlDoc
Dim cNode
Set xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.async = False
xmlDoc.load("candidate.xml")
Set currNode

= xmlDoc.documentElement.childNodes.item(0)
MsgBox currNode.nodeType

Пример использования свойства nodeType


Dim xmlDocDim cNodeSet xmlDoc = CreateObject(

Слайд 46Свойство value
Содержит значение атрибута
Свойство предназначено и для чтения, и для

записи
Для атрибутов с подузлами в строке сцепляется текст всех подузлов

со ссылками на символьные и общие примитивы, заменёнными на их значения
Содержимое строки не анализируется синтаксически

Пример:
Dim xmlDoc
Dim xVar
Set xmlDoc = CreateObject("Microsoft.xmldom")
xmlDoc.async = False
xmlDoc.load("candidate.xml")
Set root = xmlDoc.documentElement
myVar = root.attributes.item(0).value
MsgBox xVar

Свойство valueСодержит значение атрибутаСвойство предназначено и для чтения, и для записиДля атрибутов с подузлами в строке сцепляется

Слайд 47Свойство text
Содержит текстовое наполнение узла или объединённый текст, представляющий узел

и его объявление

Свойство textСодержит текстовое наполнение узла или объединённый текст, представляющий узел и его объявление

Слайд 48Свойство ownerDocuemnt
Возвращает корень того документа, который содержит заданный узел
Свойство предназначено

только для чтения
Все узлы созданы в контексте документа, и свойство

ownerDocuemnt обрабатывается до тех пор, пока узел не добавляется к другому документу
Если узел удаляется из документа, то это свойство указывает на документ, в который этот узел был включён до удаления
Свойство ownerDocuemntВозвращает корень того документа, который содержит заданный узелСвойство предназначено только для чтенияВсе узлы созданы в контексте

Слайд 49Пример использования свойства ownerDocument
Пример:
Dim xmlDoc
Dim cNode
Dim ownerDoc
Set xmlDoc = CreateObject("Msxml2.DOMDocument")
xmlDoc.async

= False
xmlDoc.load("candidate.xml")
Set cNode = xmlDoc.documentElement.childNodes.item(0).childNodes.item(1)
Set ownerDoc = cNode.ownerDocument
MsgBox ownerDoc.documentElement.tagName

Слайд 50Объект XMLDOMCDATASection
Представляет содержимое секции CDATA
Секции CDATA используются для сокрытия блоков

текста от интерпретации в качестве языка разметки
Единственным разделителем, распознаваемым

в секции CDATA, является строка "]]>"
Не имеет каких‑либо особенных свойств и методов, отличающих его от других
Наследует все те же объекты и свойства, что и XMLDOMTextObject


Слайд 51Свойство specified
Показывает, является ли атрибут заданным явно или унаследован от

значения по умолчанию, заданного в DTD или в схеме
Возвращает

логическое (Boolean) значение
Свойство предназначено только для чтения
Возвращает значение ‘true’ (истина), если атрибут задан явно в элементе
Возвращает значение ‘false’ (ложь), если значение атрибута взято из DTD или из схемы
Свойство specifiedПоказывает, является ли атрибут заданным явно или унаследован от значения по умолчанию, заданного в DTD или

Слайд 52Пример использования свойства specified
Пример:

Dim xmlDoc
Dim oNamedNodeMap
Dim cNode
Dim myNode
Set xmlDoc

=
CreateObject("microsoft.xmldom")
xmlDoc.async = False
xmlDoc.load("candidate.xml")
Set cNode =
xmlDoc.documentElement.childNodes.item(0)
Set oNamedNodeMap = cNode.attributes
Set myNode

= oNamedNodeMap.item(0)
MsgBox myNode.specified



Пример использования свойства specifiedПример:Dim xmlDocDim oNamedNodeMapDim cNodeDim myNodeSet xmlDoc = CreateObject(

Слайд 53Метод splitText
Разделяет узел типа text на два узла типа text

и вставляет новый текстовый узел в текущее дерево, как "брата",

который следует непосредственно за разделённым узлом
Параметр, используемый в этом методе, имеет тип long integer (длинное целое)
Этот параметр задаёт количество символов для выполнения разделения данного текстового узла на два узла, начиная с нуля
Метод возвращает объект нового текстового узла
Синтаксис:
oXMLDOMText=oXMLDOMText.splitText(parameter)
Метод splitTextРазделяет узел типа text на два узла типа text и вставляет новый текстовый узел в текущее

Слайд 54Метод substringData
Извлекает подстроки или части строк из полной строки
Первый

параметр этого метода имеет тип данных long integer (длинное целое),

задавая количество символов от начала строки до той позиции, в которой должно начаться извлечение
Значение нуль говорит о том, что копирование должно начинаться с самого начала данных
Второй параметр также является значением типа long integer, задающим количество символов, которые должны быть извлечены в итоговую строку
Синтаксис:
strValue=oXMLDOMCharacterData.substringData(x,y)
Метод substringDataИзвлекает подстроки или части строк из полной строки Первый параметр этого метода имеет тип данных long

Слайд 55Пример использования метода substringData
Пример:

Dim xmlDoc
Dim comment
Dim xStr


Set xmlDoc =
CreateObject("microsoft.xmldom")
xmlDoc.async = False
xmlDoc.load("candidate.xml")
Set comment =
xmlDoc.createComment("Aptech

Ltd.!")
xStr = comment.subStringData(0,6)
msgbox xStr



Пример использования метода substringDataПример:Dim xmlDocDim commentDim xStr   Set xmlDoc =  CreateObject(

Слайд 56Объект XMLDOMDocumentType
Содержит информацию обо всех примитивах и нотациях в объявлении

типа документа файла XML
Каждый объект DOM Document включает свойство

‘doctype’, которое идентифицирует объект XMLDOMDocumentType
Свойства объекта предназначены только для чтения
DTD не может быть добавлено в DOMDocument
Объект XMLDOMDocumentTypeСодержит информацию обо всех примитивах и нотациях в объявлении типа документа файла XML Каждый объект DOM

Слайд 57Свойства entities и name
Свойство entities: Содержит список примитивов, внешних и

внутренних, которые объявлены в декларации типа документа
Синтаксис:
oXMLDOMNamedNodeMap=oXMLDOMDocumentType.entities
Свойство

name: Содержит имя типа документа
Синтаксис:
sValue=oXMLDOMDocuemntType.name
Свойства entities и nameСвойство entities: Содержит список примитивов, внешних и внутренних, которые объявлены в декларации типа документа

Слайд 58Свойство nodeTypeString
Возвращает строковую версию типа узла
Синтаксис:

strValue=oXMLDOMNode.nodeTypeString

Свойство nodeTypeStringВозвращает строковую версию типа узла Синтаксис:      strValue=oXMLDOMNode.nodeTypeString

Слайд 59Пример использования свойства nodeTypeString
Пример:

Dim xmlDoc
Dim cNode
Set xmlDoc = CreateObject("microsoft.xmldom")
xmlDoc.async

= False
xmlDoc.load("candidate.xml")
Set cNode =xmlDoc.documentElement.childNodes
.item(0)
MsgBox cNode.nodeTypeString


Выведенная панель сообщений msgbox

Пример использования свойства nodeTypeStringПример:Dim xmlDocDim cNodeSet xmlDoc = CreateObject(

Слайд 60Метод replaceChild
Потомки узла node
Childnode1
Childnode2
Childnode3
Childnode4

Узелnode

replaceChild(Childnode5, Childnode4)

Потомки узла node
Childnode1
Childnode2
Childnode3
Childnode5

Дочерние узлы после

выполнения метода замены


Метод replaceChildПотомки узла nodeChildnode1Childnode2Childnode3Childnode4УзелnodereplaceChild(Childnode5, Childnode4) Потомки узла nodeChildnode1Childnode2Childnode3Childnode5Дочерние узлы после выполнения метода замены

Слайд 61Метод removeChild
Потомки узла node
Childnode1
Childnode2
Childnode3
Childnode4

Узелnode

removeChild(Childnode4)

Потомки узла node
Childnode1
Childnode2
Childnode3

Дочерние узлы после выполнения

метода удаления

Метод removeChildПотомки узла nodeChildnode1Childnode2Childnode3Childnode4УзелnoderemoveChild(Childnode4) Потомки узла nodeChildnode1Childnode2Childnode3Дочерние узлы после выполнения метода удаления

Слайд 62Объект XMLDOMEntity
Представляет синтаксически обрабатываемые или необрабатываемые примитивы в документе XML


Представляет сам примитив, а не объявление этого примитива
Представляет примитив

в свойстве ‘childNodes’ свойства ‘docType’ (DTD) объекта DOMDocument
Объект XMLDOMEntityПредставляет синтаксически обрабатываемые или необрабатываемые примитивы в документе XML Представляет сам примитив, а не объявление этого

Слайд 63Свойство notationName
Возвращает имя нотации узла
Свойство предназначено только для чтения


Содержит имя нотации для синтаксически не анализируемых примитивов
Для синтаксически

анализируемых примитивов это свойство содержит пустую строку
Имя примитива доступно через свойство nodeName
Синтаксис:
sValue=oXMLDOMEntity.notationName
Свойство notationNameВозвращает имя нотации узла Свойство предназначено только для чтения Содержит имя нотации для синтаксически не анализируемых

Слайд 64Свойства prefix и publicId
Свойство prefix: Возвращает префикс пространства имён, определённого

для данного объекта
Если префикс не определён, то возвращается пустая

строка
Синтаксис: sValue=oXMLDOMNode.prefix
Свойство publicId: Содержит общедоступный (public) идентификатор, ассоциированный с примитивом
Если общедоступный идентификатор не определён, то свойство содержит пустую строку
Свойство предназначено только для чтения
Синтаксис: sValue=oXMLDOMEntity.publicId
Свойства prefix и publicIdСвойство prefix: Возвращает префикс пространства имён, определённого для данного объекта Если префикс не определён,

Слайд 65Свойство systemId
Содержит системный идентификатор, ассоциированный с примитивом
Если системный идентификатор

не определён, то свойство содержит пустую строку
Синтаксис:

strValue=oXMLDOMEntity.systemId
Свойство systemIdСодержит системный идентификатор, ассоциированный с примитивом Если системный идентификатор не определён, то свойство содержит пустую строку

Слайд 66Метод transformNode
Обрабатывает узел и его потомков, используя предложенную XSL таблицу

стилей и возвращает результат преобразования
Параметр, передаваемый в метод, является

объектом
Это корректный документ XML или узел DOM, состоящий из элементов XSL, которые определяют преобразование этого узла
Возвращает строку, которая содержит результат преобразования этого документа XML, основанного на таблице стилей XSL
Синтаксис: sValue=oXMLDOMNode.transformNode(x)
Метод transformNodeОбрабатывает узел и его потомков, используя предложенную XSL таблицу стилей и возвращает результат преобразования Параметр, передаваемый

Слайд 67Объект XMLDOMProcessingInstruction
Объект представляет инструкцию обработки
Содержимым узла XMLDOMProcessingInstruction является все,

что расположено между разделителями инструкций обработки (PI) и конечным тэгом


Объект является записываемым, и мы можем добавлять инструкции обработки в объект DOMDocument

Пример:
Dim xmlDoc
Dim pi
Set xmlDoc = CreateObject("Microsoft.xmldom")
Set pi=
xmlDoc.createProcessingInstruction(“xml”,”version=“”1.0”””)
Msgbox pi.xml

Объект XMLDOMProcessingInstructionОбъект представляет инструкцию обработки Содержимым узла XMLDOMProcessingInstruction является все, что расположено между разделителями инструкций обработки (PI)

Слайд 68Свойство parsed
Возвращает значение True (истина), если узел и все его

потомки были подвергнуты синтаксическому анализу и обработаны
Возвращает значение False

(ложь), если какой‑либо узел остался необработанным
Свойство предназначено только для чтения
Синтаксис: bValue=oXMLDOMNode.parsed
Свойство parsedВозвращает значение True (истина), если узел и все его потомки были подвергнуты синтаксическому анализу и обработаны

Слайд 69Пример использования свойства parsed
Пример:

Dim xmlDoc
Dim root
Set xmlDoc =
CreateObject("microsoft.xmldom")
xmlDoc.async

= True
xmlDoc.load("candidate.xml")
Set root = xmlDoc.documentElement
MsgBox root.parsed



Пример использования свойства parsedПример:Dim xmlDocDim rootSet xmlDoc = CreateObject(

Слайд 70
Метод cloneNode
Узел, для которого следует создать клон


Узел и его

клон

Метод cloneNodeУзел, для которого следует создать клон Узел и его клон

Слайд 71SAX
Сокращение от “Simple API for XML” (Простой прикладной интерфейс для

XML)
Это набор прикладных интерфейсов API для работы с XML
SAX не

требует большого объёма памяти
SAX часто используется в приложениях серверной стороны, так как он быстр, и поддерживает одновременное подключение нескольких клиентских систем к серверу
Изначально SAX был разработан для языка программирования Java
ContentHandler является главным интерфейсом SAX
SAXСокращение от “Simple API for XML” (Простой прикладной интерфейс для XML)Это набор прикладных интерфейсов API для работы

Слайд 72SAX против DOM
DOM и SAX являются двумя наиболее популярными прикладными

интерфейсами API для обработки документов XML
Возможно объединение SAX и

DOM в пределах одной системы
SAX против DOMDOM и SAX являются двумя наиболее популярными прикладными интерфейсами API для обработки документов XML Возможно

Слайд 73Подведение итогов – I
Аббревиатура DOM означает Document Object Model. Эта

концепция позволяет воспринимать документ, как объект, и предоставляет возможность извлекать

информацию, вносить изменения и выполнять запросы к документу посредством программного кода.
Три типа моделей документов , поддерживаемых в XML: Линейная модель (Linear Model), которая применима к статическим документам, Древовидная модель (Tree Model), которая применима к динамическим документам, и Объектная модель (Object Model), в которой каждый элемент считается объектом.
Два метода, которыми могут быть созданы документы XML:
XML Island (Островки данных XML)
ActiveX Control (Элементы управления ActiveX)
Программирование XML DOM может быть классифицировано по двум типам объектов:
XML DOM Base Object (Базовый объект XML DOM)
DOM Objects (Объекты DOM)
Подведение итогов – IАббревиатура DOM означает Document Object Model. Эта концепция позволяет воспринимать документ, как объект, и

Слайд 74Подведение итогов – II
Объект ‘XMLDOMNode’ расширяет ядро интерфейса узла XML

DOM. Большинство других объектов DOM являются производными ("наследниками") от объекта

XMLDOMNODE.
Объект ‘XMLDOMNodeList’ – это коллекция (набор) узлов. Его методы позволяют производить итерации по всем узлам‑потомкам заданного узла.
К объекту ‘XMLDOMNamedNodeMap’ можно получить доступ по индексу. Это не означает, что XML DOM строго задаёт порядок этих узлов. Коллекция используется для для итерации по атрибутам для заданного элемента.
Объект ‘XMLDOMParseError’ возвращает информацию о последней синтаксической ошибке. Эта информация включает номер ошибки, номер строки, позицию символа и текстовое описание встретившейся ошибки.
Объект ‘XMLDOMAttribute’ представляет атрибут элемента. Атрибуты – это свойства самого элемента, но не узлов‑потомков элемента.
Объект ‘XMLDOMCDATASection’ представляет содержимое секции CDATA.
Объект ‘XMLDOMDocumentType’ содержит информацию обо всех примитивах и нотациях в объявлении типа документа файла XML.
Simple API for XML (Простой прикладной программный интерфейс для XML) (SAX) – это набор прикладных интерфейсов API, доступный для работы с XML. SAX не требует большого объёма памяти. SAX часто используется в приложениях серверной стороны, так как он быстр.
Подведение итогов – IIОбъект ‘XMLDOMNode’ расширяет ядро интерфейса узла XML DOM. Большинство других объектов DOM являются производными

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика