XML- технологии Лекция 6 Технология DOM. DOM DOM Document Object Model объектная модель документа, стандартизованная консорциумом W3C DOM программный.

Презентация:



Advertisements
Похожие презентации
Лекция 7 Стандартная объектная модель документа. Варианты DOM DOM уровня 0 поддерживает общие коллекции объектов документа (forms [ ], images [ ], anchors.
Advertisements

Программный доступ к XML DOM, SAX,.NET среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря.
Троицкий Д.И. Интернет-технологии1 BOM- И DOM-ОБЪЕКТНЫЕ МОДЕЛИ БРАУЗЕРА Лекция 12 Кафедра «Автоматизированные станочные системы» Dept. of Automated Manufacturing.
XSLT-ТРАНСФОРМАЦИЯ XML- ТЕХНОЛОГИИ Лекция 4. Трансформация XML- данных Категории трансформации Структурные трансформации – трансформация одного словаря.
БАЗЫ ДАННЫХ ЛЕКЦИЯ 14. тема: XML-ТЕХНОЛОГИИ В БАЗАХ ДАННЫХ.
Разработка Web-приложения с помощью Xml Создание Web-приложения на основе файла Xml Выполнение преобразования XSLT на стороне сервера Использование объектной.
Язык запросов XML. XML (Extensible Markup Language) - это новый SGML-производный язык разметки документов, позволяющий структурировать информацию разного.
Java Advanced XML Transformations 1.0 (XSLT 1.0).
XSL eXtensible Stylesheet Language среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря.
WEB- ТЕХНОЛОГИИ Лекция 4. Задача преобразования XML- данных 1 Задача преобразования Для передачи данных между разными приложениями необходимо преобразовать.
SAX Simple API for XML Презентацию подготовила Иванова Анна, гр. 950б.
Реализация концепции построения и формирования отраслевой системы государственного учета, регистрации и мониторинга (ОСГУРМ) информационных ресурсов сферы.
XPath выступает в роли подъязыка преобразований XSLT и XPointer. Выражение XPath используется для манипуляции строками, в числовых выражениях, а также.
Работа с DOM-моделью и пользовательский интерфейс По материалам курса University of Washington
XML - язык разметки и модель данных XML RSS, СУБД… На сегодняшний день уже всем специалистам в области Web-технологий стало очевидно, что существующих.
Лекция 4 Объекты. Типы объектов ТипПример Источник реализации Регламентирующи й стандарт Пользовательский Определенные пользователем объекты Student или.
XML - ПРАВИЛА ПОСТРОЕНИЯ ДОКУМЕНТОВ. Элементы электронного УМК Учебный план Программа дисциплины Структура курса Электронный конспект Обучающие и аттестующие.
Страница 1 Действие Страница 2 ЗапросДействие Страница 3 Работа с Web-приложением с точки зрения пользователя.
База данных (БД) – Совокупность определённым образом организованной информации на определённую тему (в рамках определённой предметной деятельности); Организованная.
Инструменты VS 2010 для работы с XML языком XML редактор. XSLT отладчик XSLT Profiler, инструмент позволяющий разработчикам измерять, оценивать и решать.
Транксрипт:

XML- технологии Лекция 6 Технология DOM

DOM DOM Document Object Model объектная модель документа, стандартизованная консорциумом W3C DOM программный интерфейс доступа к структуре и содержимому размеченных документов для создания, ведения и анализа структуры и контента DOM кэш для хранения экземпляра XML-документа

Дерево DOM DOM создает в памяти древовидную версию документа из XML- источника данных

Стандарты DOM Уровень (level) версия DOM-спецификации от W3C

Типы узлов DOM НаименованиеОписание DocumentКорень древовидной структуры DOM DocumentFragmentНабор элементов, относящийся к дереву DOM или подготовленный для добавления к его структуре ElementЭлемент документа AttrАтрибут элемента документа TextТекстовое содержимое элементов и значения атрибутов CommentКомментарий в документе CDATASectionРаздел CDATA ProcessingInstructionИнструкция по обработке EntityСущность, объявленная в разделе DTD EntityReferenceСсылка на сущность из раздела DTD DocumentTypeЗаголовок DTD-схемы документа NotationНотации, объявленные в разделе DTD

Типы узлов DOM. Пример

Способы применения DOM DOM на сервере DOM на клиенте

Создание объекта DOM Основной объект Document PHP модуль DOM XML, класс DOMDocument $dom = new DOMDocument (); $dom = new DOMDocument ('1.0');

Загрузка документа в DOM Варианты: Загрузка из файла Загрузка из строки Загрузка из потока В PHP-классе DomDocument 2 метода: Load LoadXML Примеры $dom->load ('СтудАтр.xml'); $textXML = " «; $dom -> loadXML ($textXML);

Создание узлов DOM Этапы: Определить, что должно быть добавлено в дерево, и создать соответствующий новый узел Указать, куда в дереве должен быть помещен новый узел, и выполнить добавление узла Методы объекта Document create­Element создание элемента createAttribute создание атрибута createTextNode создание текстового узла create­CDATA­Section создание секции CDATA сreateComment создание комментария Расположение нового узла в дереве: Привязка к существующему узлу дерева Привязка к отношению иерархии между узлами

Создание узлов DOM с помощью PHP createProcessingInstruction: $pi = $dom -> createProcessingInstruction ("xml", "version = '1.0' encoding = 'windows-1251'"); сreateElement: $student = $dom -> createElement ("студент"); сreateAttribute: $fio = $dom -> createAttribute ("фио"); $fio -> Value = "Иванов"; setAttribute: $student-> setAttribute ("фио", "Иванов"); appendChild $student -> appendChild ($kod); insertBefore $student -> insertBefore ($kaf, $reit);

Удаление узлов DOM removeChild: $xml -> removeChild ($xml -> documentElement); removeAttribute $stud = $xml -> getElementsByTagName ("студент") -> item (0); $stud -> removeAttribute ('фио'); removeAttributeNode $stud = $xml -> getElementsByTagName ("студент") -> item (0); $fio = $stud -> getAttributeNode ("фио"); $stud -> removeAttributeNode ($fio); removeAttributeNS -1- $stud = $xml -> getElementsByTagName ("студент") -> item (0); $stud -> removeAttributeNS (' 'фио'); -2- $stud = $xml -> getElementsByTagName ("студент") -> item (0); $sdacha = $stud -> getElementsByTagName ("сдача") -> item (0); $stud -> removeChild ($sdacha);

Редактирование узлов DOM cloneNode копирование узла: $clone = $student -> cloneNode (true); replaceChild замена узла дерева в DOM: $dom -> replaceChild ($clone, dom -> DocumentElement); removeChild удаление узла дерева в DOM: $student -> removeChild (); removeAttribute и removeAttributeNode удаление атрибутов

Обход узлов дерева DOM nodeType определение типа узла: Node -> nodeType tagName имя элемента, name имя атрибута removeChild удаление узла дерева в DOM: $student -> removeChild (); removeAttribute и removeAttributeNode удаление атрибутов

Обход узлов дерева DOM parentNode предок контекстного узла: $node -> parentNode -> tagName; firstChild первый дочерний узел: $node -> firstChild -> tagName; lastChild последний дочерний узел: $node -> lastChild -> tagName; previousSibling узел, предыдущий контекстному в иерархии предка: $node -> previousSibling -> tagName; nextSibling узел, следующий за контекстным в иерархии предка: $node -> nextSibling -> tagName hasAttributes проверка наличия атрибутов hasChildNodes проверка наличия дочерних узлов

XPath-адресация PHP-класс DOMXPath: $xpath = new DOMXPath ($dom); Запросы : query: $query1 = "// студент фио = ' Иванов ']/ сдача [ предмет название = ' Базы данных оценка "; echo $xpath -> query ($query1) -> item (0) -> value; evaluate: $query2 = "count (// студент фио = ' Иванов ']/ сдача )"; echo $xpath -> evaluate ($query2, $dom); getElementsByTagName: $result = $dom -> getElementsByTagName (" студент ");

XSL-трансформация с помощью DOM Базовый класс в PHP XsltProcessor: $xp = new XsltProcessor(); Загрузка таблицы стилей метод Load: $xsl = new DomDocument; $xsl -> load ("stylesheet.xsl"); Привязка таблицы стилей метод importStylesheet: $xp->importStylesheet($xsl); Преобразование : transformToXml: echo $xp -> transformToXml ($xml); transformToUrl: $xp -> transformToURI ($xml, 'file:///result.html'); transformToDoc: $result = $xp -> transformToDoc ($xml); echo $result -> saveXML ();