XML eXtensible Markup Language 1.Язык навигации внутри XML-документа (XPath) 2.Пространства имён (Namespaces) 3.Язык трансформаций (XSLT)

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



Advertisements
Похожие презентации
XML eXtensible Markup Language 1.Пространства имён (Namespaces) 2.Язык навигации внутри XML-документа (XPath)
Advertisements

XML eXtensible Markup Language 1.Определение типа документов (DTD) 2.Язык навигации внутри XML-документа (XPath)
XSLT-ТРАНСФОРМАЦИЯ XML- ТЕХНОЛОГИИ Лекция 4. Трансформация XML- данных Категории трансформации Структурные трансформации – трансформация одного словаря.
XSL eXtensible Stylesheet Language среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря 2013 г.среда, 11 декабря.
XML- технологии Лекция 3 XPath- адресация. Что такое XPath? XPath - это синтаксис для адресации частей XML- документа XPath использует пути для адресации.
WEB- ТЕХНОЛОГИИ Лекция 4. Задача преобразования XML- данных 1 Задача преобразования Для передачи данных между разными приложениями необходимо преобразовать.
Java Advanced XML Transformations 1.0 (XSLT 1.0).
БАЗЫ ДАННЫХ ЛЕКЦИЯ 14. тема: XML-ТЕХНОЛОГИИ В БАЗАХ ДАННЫХ.
Современные языки и технологии программирования Использование XML.
Автоматическая обработка естественного языка I. Обработка письменного текста.
XPath Набор синтаксических правил для адресации элементов XML-документа.
Java Advanced XML Path Language 1.0 (XPath 1.0). 2 СПбГУ ИТМО Georgiy KorneevJava Advanced / XPath 1.0 Содержание 1.Введение 2.Пути 3.Выражения 4.Функции.
Технология Идентификации Ресурсов X-Pointer. Предназначение X-Pointer – это язык, описывающий местонахождение тех или иных ресурсов. Выражения языка X-Pointer.
XML в Excel XML в Word XML в блокноте XML в internet explorer Спецификация XML.
XML и XSLT (2) Матросов Александр Васильевич Санкт-Петербургский государственный университет.
XML - ПРАВИЛА ПОСТРОЕНИЯ ДОКУМЕНТОВ. Элементы электронного УМК Учебный план Программа дисциплины Структура курса Электронный конспект Обучающие и аттестующие.
Презентацию подготовила Шигаева Алена, гр.950б. Это расширяемый язык таблиц стилей. Язык XSL фактически состоит из двух частей: языка преобразований и.
WEB- ТЕХНОЛОГИИ Лекция 2. Задача обмена данными 1 Форматы обмена данными : Текстовый CSV (Comma Separated Values) Локальные XML.
Язык запросов XML. XML (Extensible Markup Language) - это новый SGML-производный язык разметки документов, позволяющий структурировать информацию разного.
XPath выступает в роли подъязыка преобразований XSLT и XPointer. Выражение XPath используется для манипуляции строками, в числовых выражениях, а также.
Транксрипт:

XML eXtensible Markup Language 1.Язык навигации внутри XML-документа (XPath) 2.Пространства имён (Namespaces) 3.Язык трансформаций (XSLT)

XPath навигация внутри документа Основные понятия: Основные понятия: –набор узлов (nodeset) Выражение на XPath (путь) описывает набор узлов в документе –элементы –атрибуты –корень документа (корневой элемент) –абсолютный / относительный путь –родитель-дети –сиблинги (узлы одного уровня) –предки-потомки

XPath навигация внутри документа Простые выражения Простые выражения путь от корня (абсолютный) начинается с / путь от корня (абсолютный) начинается с / фрагмент пути между двумя / шаг по дереву (по умолчанию от корня к листьям) фрагмент пути между двумя / шаг по дереву (по умолчанию от корня к листьям) в результат входят все узлы, подходящие под описанный путь в результат входят все узлы, подходящие под описанный путь /booklist ; /booklist/book/author /booklist ; /booklist/book/author путь без / (относительный) считается не от корня, а от текущей позиции путь без / (относительный) считается не от корня, а от текущей позиции book/author book/author //любое количество шагов //любое количество шагов //book ; //author ; /booklist//author //book ; //author ; атрибут

XPath навигация внутри документа Простые выражения Простые выражения. (точка) Текущий узел. (точка) Текущий узел.. (две точки) Родительский узел.. (две точки) Родительский узел../title (путь от book/author к book/title) * Любой узел без указания имени * Любой узел без указания имени /booklist/* все дети /booklist/*/* все внуки все атрибуты

XPath навигация внутри документа Выражения с условием (предикатом) Выражения с условием (предикатом) условие на порядковый номер узла в дереве условие на порядковый номер узла в дереве book[2] ; book[last()] ; book[position()250] условие на значение атрибутов условие на значение Условие […] применяется к тому узлу, после которого стоит Условие […] применяется к тому узлу, после которого стоит book[1]/author vs. book/author[1]

Пространства имён (Namespaces) Представьте, что в одном XML-документе определены такие элементы: Представьте, что в одном XML-документе определены такие элементы: name, age, company, position name, age, company, position А в другом такие: А в другом такие: name, border, size, position name, border, size, position Что случится, если нам понадобится объединить документы этих типов? Что случится, если нам понадобится объединить документы этих типов? Парсер запутается в элементах name и position. К какому типу их отнести?

Пространства имён (Namespaces) Пространство имён позволяет разделять наборы элементов, относящихся к разным объектам Пространство имён позволяет разделять наборы элементов, относящихся к разным объектам Для этого к названию элемента добавляется префикс Для этого к названию элемента добавляется префикс pers:name, pers:age, pers:company, pers:position pers:name, pers:age, pers:company, pers:position image:name, image:border, image:size, image:position image:name, image:border, image:size, image:position У каждого имени может быть только один префикс. Он отделяется двоеточием У каждого имени может быть только один префикс. Он отделяется двоеточием

Пространства имён (Namespaces) Пространства имён, используемые в документе, должны быть объявлены Пространства имён, используемые в документе, должны быть объявлены –объявление делается либо в корневом элементе, либо в элементах, где используется данный префикс –каждому префиксу ставится в соответствие гиперссылка (реальная или условная)

Преобразования XML-данных (XSLT) Как мы помним, XML ничего сам не делает. Его задача описывать структуру данных Как мы помним, XML ничего сам не делает. Его задача описывать структуру данных Чтобы с этими данными что-то сделать, используются специальные средства Чтобы с этими данными что-то сделать, используются специальные средства XSL eXtensible Stylesheet Language XSL eXtensible Stylesheet Language –XSLT: XSL Transformations XSLT выполняет преобразования данных –XSL-FO: XSL Formatting Objects XSL-FO форматирует данные для печати

Преобразования XML-данных (XSLT)

Что умеет делать XSL? Что умеет делать XSL? –Отбирать (фильтровать) определённые данные из целого документа –Упорядочивать данные независимо от исходного порядка –Менять исходную структуру данных (до неузнаваемости) –Преобразовывать XML в другой XML в другой XML в правильный HTML в правильный HTML в другие текстовые форматы в другие текстовые форматы

Преобразования XML-данных (XSLT) В отличие от многих языков программирования (BASIC, Pascal, C,…), XSL не процедурный язык, а декларативный. В отличие от многих языков программирования (BASIC, Pascal, C,…), XSL не процедурный язык, а декларативный. Программа на XSL (transformation, она же stylesheet) сообщает не что нужно делать (последовательность операций), а что должно получиться.

Преобразования XML-данных (XSLT) Программа на XSL состоит из шаблонов (templates), которые сопоставляются с различными частями дерева XML на входе и выдают некоторый выход. Программа на XSL состоит из шаблонов (templates), которые сопоставляются с различными частями дерева XML на входе и выдают некоторый выход. (Далее см. примеры + учебник) (Далее см. примеры + учебник)