Программный доступ к XML DOM, SAX,.NET среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.
Document Object Model DOM (Document Object Model) DOM (Document Object Model) – интерфейс программирования, обеспечивающий обработку XML- документов и стандартизованный W3C
Модель W3C DOM Обработка документа в виде дерева, состоящего из узлов. Возможные типы узлов: элемент; атрибут; текст; раздел CDATA; инструкция по обработке; комментарий; документ тип документа и т.д.
Объекты XML DOM Document – объект докмента DocumentType – ссылка на DTD Element - элемент Attr - атрибут ProcessInsrtuction – инструкция по обработке Comment - комментарий Text – текстовое содержимое элемента или атрибута CDATASection – ссылка на раздел CDATA Node – отдельный узел в дереве документа; NodeList – список узловых объектов NamedNodeMap – обеспечивает доступ по имени
Реализация Microsoft DOMDocument – верхний узел дерева XML DOM XMLDOMNode – отдельный узел в дереве документа XMLDOMNodeList – список узловых объектов (с возможностью индексного доступа) XMLDOMNamedNodeMap – обеспечивает доступ по имени XMLDOMParseError – информирует о последней ошибке в документе XMLHTTPRequest – обеспечивает взаимодействие с HTTP-серверами XSLRuntime – поддерживает методы, специфичные для XSL Для остальных объектов – добавляем XMLDOM в начале по сравнению с рекомендациями W3C
Другие возможности XML DOM Выборка элементов по имени: XMLdoc.GetElementByTagName ( ); Изменение XML-содержимого с помощью методов: createElement, insertBefore, createTextNode, appendChid
Simple API for XML SAX(Simple API for XML) Интерфейс SAX (Simple API for XML) основан на событии. Если анализатор SAX встречает элемент или инструкцию по обработке, то воспринимает их в качестве событий, вызывая соответствующий код. Как результат, при помощи SAX можно быстрее прочитать XML-документ, но нельзя его никак модифицировать.
XML и платформа.NET XmlReader XmlReader – абстрактный класс, выполняющий чтение и обеспечивающий быструю доставку некэшированных XML-данных. Представляет собой однонаправленный синтаксический анализатор, подобный SAX. XmlTextReader XmlTextReader – расширяет возможности класса XmlReader. Обеспечивает однонаправленный потоковый доступ к XML-данным.
XML и платформа.NET XmlWriter XmlWriter – абстрактный класс, выполняющий запись данных и обеспечивающий быструю доставку некэшированных данных XML в виде потока или файла. XmlTextWriter XmlTextWriter – расширяет возможности класса XmlWriter. Обеспечивает быструю однонаправленную генерацию потоков XML.
XML и платформа.NET XmlNode XmlNode – абстрактный класс, представляющий один узел в XML-документе. Базовый класс для ряда других классов пространства имён XML в.NET. XmlDocument XmlDocument – расширяет класс XmlNode. Представляет собой реализацию W3C DOM в.NET. XmlDataDocument XmlDataDocument – расширяет класс XmlDocument. Используется при работе с ADO.NET и позволяет смешивать XML и реляционные данные в одном представлении.
XML и платформа.NET XmlResolver XmlResolver – абстрактный класс, решает задачу использования внешних ресурсов на базе XML (например, шаблонов DTD, схем). Также служит для обработки элементов типа include или import. XmlUrlResolver XmlUrlResolver – расширяет класс XmlResolver. Решает задачу использования внешних ресурсов, именованных при помощи URI/URL.
XML и платформа.NET XPathDocument XPathDocument – класс реализует чтение XML- документа. В отличие от XmlReader, не является потоковым. Основное назначение – создание навигаторов. XPathNavigator XPathNavigator – содержит методы, необходимые для перемещения и выбора элементов, в том числе с использованием выражений XPath.