1 / 29

XML- ТЕХНОЛОГИИ Лекция 4

XML- ТЕХНОЛОГИИ Лекция 4. XSLT- ТРАНСФОРМАЦИЯ. Трансформация XML- данных. Категории трансформации Структурные трансформации – трансформация одного словаря XML в другой по аналогии с переводом

isha
Download Presentation

XML- ТЕХНОЛОГИИ Лекция 4

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. XML-ТЕХНОЛОГИИЛекция 4 XSLT-ТРАНСФОРМАЦИЯ

  2. Трансформация XML-данных Категории трансформации • Структурные трансформации – трансформация одного словаря XML в другой по аналогии с переводом • Создание динамических документов – возможность изменять порядок, сортировать и фильтровать части документа XML • Трансформации в язык формирования изображения – подготовка документа для визуального представления в какой-либо форме браузера пользователя

  3. XSLT. Определение • XSLT (Extensible Stylesheet Language for Transformations — расширяемый язык таблиц стилей для преобразований) • Спецификация W3C —ноябрь 2000 года

  4. Назначение XSLT XSLT позволяет преобразовывать XML-документ: – в другой XML-документ; – в HTML-документ для отображения веб-браузером; – в документы иных форматов (RTF, PDF, TeX и т. п.).

  5. Таблицы стилей Таблица стилей (Stylesheet) — это XML-документ специального вида (обычно это файл с расширением «xsl»), содержащий набор правил преобразования исходного XML-документа, написанных на языке XSLT и предназначенных для XSLT-процессора.

  6. XSLT-процессор XSLT-процессор — это программа, которая выполняет преобразование исходного XML-документа на основе таблицы стилей

  7. XSL и FO • XSLT - язык преобразований XML • XPath- язык определения частей и путей к элементам XML • XSL FormattingObjects– язык форматирования XML

  8. Пространство имен XSLT • Стандартный XSLT относится к пространству имен с URI: http://www.w3.org/1999/XSL/Transform • Общепринятым считается префикс «xsl:»

  9. Структура таблицы стилей

  10. Как происходит преобразование Основные объекты • дерево исходного документа / входное дерево • дерево таблицы стилей • дерево результирующего документа / выходное дерево

  11. Шаблоны в XSL CSS: p { font-family: arial} → XSL: шаблоны (templates) Таблица стилей содержит по крайней мере один шаблон Точка входа — шаблон для обработки корневого элемента Шаблон может содержать: • поддеревья конечных литеральных элементов • элементы-инструкции

  12. Шаблон с КЛЭ

  13. Форсирующая трансформация • Форсирующая обработка (PushProcessing) — обработка, управляемая логикой исходного документа Основные инструкции • apply-templates • template match="образец" • Образец (pattern) — это информация, которая указывается в шаблоне для того, чтобы определить, соответствует ли шаблон выбранному узлу.

  14. Примеры образцов в шаблонах template match = • "Студент/Предмет/ Сдача" • "Предмет [@объем = '120']/Сдача [1]" • "Студенты/Студент/Предмет/Сдача" • "Предмет"

  15. Форсирующая трансформация Дополнительные инструкции • value-of select="образец" value-of select = • "Студенты/Студент/@Код" • "Студенты/Студент/@ФИО" • "Студенты/Студент[1]/@Код" • "count(Студенты/Студент[1]/Предмет [@объем = '120']/Сдача)"

  16. Пример форсирующей трансформации • Исходный документ • XSL-таблица стилей

  17. Пример форсирующей трансформации • Привязка XSLк XML • Результирующий документ

  18. Пример форсирующей трансформации • Исходный документ • XSL-таблица стилей

  19. Пример форсирующей трансформации • Привязка XSLк XML • Результирующий документ

  20. Извлекающая трансформация • Извлекающая обработка (PullProcessing) —обработка, управляемая логикой таблицы стилей Основные конструкции • for-each select="XPath-выражение"

  21. Пример извлекающей трансформации • Исходный документ • XSL таблица стилей

  22. Пример извлекающей трансформации • Результирующий документ

  23. Условные конструкции Основные инструкции • if: <xsl:if test="Условие"> инструкции </xsl:if> • choose <xsl:choose> <xsl:whentest="Условие1"> инструкции </xsl:when> <xsl:when test="Условие2"> инструкции </xsl:when> <xsl:otherwise> инструкции </xsl:otherwise> </xsl:choose>

  24. Инструкция xsl:if • XSL-таблица стилей

  25. Инструкция xsl:if • Результирующий документ

  26. Инструкция xsl:choose • Исходный документ

  27. Инструкция xsl:choose • XSL-таблица стилей

  28. Инструкция xsl:choose • Результирующий документ

  29. Переменные и параметры • <xsl:param name = "имя">значение</xsl:param> • <xsl:variable name = "имя" select = "XPath-выражение"/> • <xsl:variable name = “stud" select = «Студенты/Студент[1]/@ФИО"/> • <xsl:value-of select="$stud"/>

More Related