Образовательные ресурсы
<<  Урок с использованием АРМ учителя Использование программы Trader  >>
Практическое использование XML
Практическое использование XML
XML
XML
Зачем нужна разметка данных
Зачем нужна разметка данных
XML: Правила построения
XML: Правила построения
XML: Дерево
XML: Дерево
XML: Передача данных
XML: Передача данных
XML: Передача данных
XML: Передача данных
Web Services
Web Services
XML: Хранение данных
XML: Хранение данных
XML: Хранение данных
XML: Хранение данных
XML: Преобразование данных
XML: Преобразование данных
XML: Стандарты на базе XML
XML: Стандарты на базе XML
Формализация структуры XML
Формализация структуры XML
Xml-схема: когда это нужно
Xml-схема: когда это нужно
XML-схема: когда это НЕ нужно
XML-схема: когда это НЕ нужно
Xml-схема: возможности
Xml-схема: возможности
Xml-схема: демонстрация
Xml-схема: демонстрация
XPath: Навигация по XML
XPath: Навигация по XML
XPath: Примеры
XPath: Примеры
XPath: Примеры
XPath: Примеры
XPath: Использование в программах
XPath: Использование в программах
Зачем нужен XPath
Зачем нужен XPath
XQuery – Язык XML запросов
XQuery – Язык XML запросов
XSLT: XML Transformations
XSLT: XML Transformations
XSLT: Упрощенная структура
XSLT: Упрощенная структура
XSLT: Пример
XSLT: Пример
XSLT: Другие возможности
XSLT: Другие возможности
XSLT: Web “Skins”
XSLT: Web “Skins”
XSLT: Web “Skins” - 2
XSLT: Web “Skins” - 2
XSLT: Интерфейс пользователя
XSLT: Интерфейс пользователя
XSLT: XML to Text
XSLT: XML to Text
XSLT: XML to XML
XSLT: XML to XML
XSL-FO: Formatting Objects
XSL-FO: Formatting Objects
XSL-FO: Formatting Objects
XSL-FO: Formatting Objects
XSL-FO: Пример
XSL-FO: Пример
XML: Программная обработка
XML: Программная обработка
It-корпорации и XML
It-корпорации и XML
XML и microsoft
XML и microsoft
XML и microsoft
XML и microsoft
XML и adobe
XML и adobe
XML и oracle
XML и oracle
XML и sun
XML и sun
Заключение
Заключение

Презентация на тему: «Практическое использование XML». Автор: dmathies. Файл: «Практическое использование XML.ppt». Размер zip-архива: 1375 КБ.

Практическое использование XML

содержание презентации «Практическое использование XML.ppt»
СлайдТекст
1 Практическое использование XML

Практическое использование XML

Ростислав Титов Группа е-бизнеса отдела ИТ ЦЕРН – Женева, Швейцария

2 XML

XML

eXtensible Markup Language

«Расширяемый язык разметки»

SGML (стандарт ISO, 1986) В основном для технической документации XML (стандарт W3C, 1998) Упрощение и развитие SGML, широкая область применения

3 Зачем нужна разметка данных

Зачем нужна разметка данных

Разметка позволяет добавить информацию о структуре документа

<book lang=“Hungarian”> <chapter> <section> </section> <section> </section> </chapter> <chapter> <section> </section> <section> </section> </chapter> </book>

Bevezet?s Sz?veg Jel?l?s M?gt?bb dokumentum jel?l?s Foglalt attrib?tumok Feldolgoz? utas?t?sok

Введение Текст Разметка Дополнительные данные о разметке Зарезервированные атрибуты Инструкции по обработке

4 XML: Правила построения

XML: Правила построения

Заголовок

Один корневой тэг

Иерархия тэгов

Атрибуты

Текстовые элементы

Пустые элементы

Некоторые правила Имена элементов чувствительны к регистру букв Каждый элемент должен закрываться Элементы не могут пересекаться (<a><b></a></b>) Значения атрибутов - в кавычках или апострофах

<?xml version="1.0" encoding="UTF-8"?> <presentation> <author> <firstname>Rostislav</firstname> <lastname>Titov</lastname> </author> <chapter number="1" title="What is XML"> XML (Extensible Markup Language) is … </chapter> <conclusion/> </presentation>

5 XML: Дерево

XML: Дерево

presentation

chapter

chapter

chapter

author

text

text

text

firstname

lastname

text

text

6 XML: Передача данных

XML: Передача данных

Независимость от платформы и языка Простота создания, простота обработки Понятность для человека и компьютера Открытый стандарт Большое количество библиотек обработки Большое количество литературы Специализированные XML-редакторы Возможность проверки структуры

7 XML: Передача данных

XML: Передача данных

Пример: CERN Electronic Document Handling (EDH)

Автоматическая генерация форм из внешних программ XML в качестве формата передачи данных Анализ XML-схемы - гарантия правильности данных

XML

EDH

Внешняя программа

8 Web Services

Web Services

WSDL – Web Service Definition Language SOAP – Simple Object Access Protocol

Обмен данными между программами через Интернет Стандарт Независимость от платформы и языка (Java, .Net, …)

Web service

SOAP

XML

WSDL

XML

9 XML: Хранение данных

XML: Хранение данных

Хранение структуры данных вместе с данными Объектное «дополнение» реляционных СУБД Проверка структуры Поддержка на уровне баз данных Microsoft SQL Server 2000 +, Oracle 9i +, Специальный тип данных для хранения XML Специализированные XML-индексы Запросы к XML (XQuery и пр.) Выдача данных в формате XML

10 XML: Хранение данных

XML: Хранение данных

Пример: Поисковая система EDH

Проблема: Эффективный поиск по произвольному числу критериев – нетривиальная задача

Решение:

Все документы хранятся в XML Контекстный поиск по XML (Oracle InterMedia) Пример: «Найти документы, которые создал Титов»: Select DOC_ID from DOC_XML where Contains(XML, “Titov within creator”) > 0;

11 XML: Преобразование данных

XML: Преобразование данных

XML может быть преобразован в HTML, текст, PDF, ... Не требуется специальных программных средств Коммерческие визуальные редакторы Платформонезависимость

12 XML: Стандарты на базе XML

XML: Стандарты на базе XML

Возможность формального описания структуры Независимость от платформы и языка Понятность для человека и компьютера Возможность использования XML-средств (преобразования XSLT, запросы XQuery)… XHTML (HTML, удовлетворяющий стандарту XML) WSDL (Web Services Definition Language) SOAP (Simple Object Access Protocol) SVG (Scalable Vector Graphics) ebXML (XML for e-Business) …

13 Формализация структуры XML

Формализация структуры XML

Существуют способы формального определения структуры XML-документов

DTD (Document Type Definition) XML-Схема (XML Schema)

Устарело! Не для новых разработок

14 Xml-схема: когда это нужно

Xml-схема: когда это нужно

Формальное описание структуры для будущего использования Программисты могут не беспокоиться о правильности входных данных Создатели XML-документов могут заблаговременно проверить их правильность

15 XML-схема: когда это НЕ нужно

XML-схема: когда это НЕ нужно

Когда заведомо известно, что XML имеет правильную структуру Когда правильность структуры не играет роли Когда нужна максимальная скорость обработки Небольшие «одноразовые» проекты

16 Xml-схема: возможности

Xml-схема: возможности

Набор и порядок следования элементов Последовательный порядок элементов (sequence) или выбор (choice) Количество повторений элементов и групп элементов Набор и наличие/отсутствие атрибутов Тип элементов и атрибутов Ограничения на значения элементов и атрибутов Значения атрибутов по умолчанию Уникальность значений Поддержка пространств имен (namespaces)

17 Xml-схема: демонстрация

Xml-схема: демонстрация

18 XPath: Навигация по XML

XPath: Навигация по XML

Обеспечивает доступ к отдельным элементам XML Результатом XPATH-выражения может быть:

Элемент XML Набор элементов Логическое выражение

Строка Число Пустое множество

C:\presentation\author\firstname

/presentation/author/firstname

19 XPath: Примеры

XPath: Примеры

Найти имя ректора /institute/rector/person/text() Найти названия факультетов /institute/faculty/@name Найти всех сотрудников //person Найти имя декана факультета «Б» /institute/faculty[@shortname=“Б”]/dean/person/text() Найти имя второго по счету заместителя Малюка А. А. //dean/person[starts-with(., “Малюк”)] /../../deputies/person[position() = 2]

20 XPath: Примеры

XPath: Примеры

Пример: Система обработки событий

Система обработки

События

Подписка на события

Сравнение события c XPath подписки

«Хочу уведомления о всех документах на сумму более 600 CHF»

/ document [amount > 600]

XPath

XPath

Уведомление пользователей

21 XPath: Использование в программах

XPath: Использование в программах

XPath

DOM Model

System.out.println(((XMLDocument)xml).selectSingleNode( "/config/report[@name='Slava']/title/text()").getNodeValue());

Element root = xml.getDocumentElement(); Node child; for (child = root.getFirstChild(); child != null; child = child.getNextSibling()) if (child.getNodeName().equals("report") && ( (Element)child ).getAttribute("name").equals("Slava")) break; for (child = ((Element)child).getFirstChild(); child != null; child = child.getNextSibling()) { if (child.getNodeName().equals("title") ) { for (Node child2 = child.getFirstChild(); child2 != null; child2 = child2.getNextSibling()) if ( child2 instanceof Text ) System.out.println(( (Text)child2 ).getData().trim()); } }

22 Зачем нужен XPath

Зачем нужен XPath

«Xpath является критической составляющей xml-преобразований (XSLT) и запросов xquery. »

23 XQuery – Язык XML запросов

XQuery – Язык XML запросов

XQuery – это SQL для XML Независимость от конкретной СУБД Простота использования Поддержка популярными СУБД (Microsoft SQL Server 2003, Oracle 9i и10g) Базируется на XPath, но более понятен и может работать на множестве документов

24 XSLT: XML Transformations

XSLT: XML Transformations

Transforms XML to HTML, text or other XML XSLT 1.0 (Current), XSLT 2.0 (Draft) XSLT is a “Human Interface” to XML Supported by Web Browsers

25 XSLT: Упрощенная структура

XSLT: Упрощенная структура

XSLT – это файл в формате XML Активное использование XPath

<html> <body>

xsl:stylesheet

xsl:value-of

xsl:template

xsl:value-of

xsl:apply-templates

xsl:template

… </body> <html>

Напечатать значение XPath

Применить шаблоны к другим элементам

Применить шаблон к элементу исходного XML

26 XSLT: Пример

XSLT: Пример

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:template match="presentation"> <html> <body bgcolor="#FFCCFF"> <h1><font color="darkblue"><xsl:value-of select="title"/></font></h1> <h4><font color="green"><i>Author: <xsl:value-of select="author"/></i></font></h4> <b>Table of Contents</b><br/><br/> <xsl:apply-templates select="chapter" mode="contents"/> <br/><br/> <xsl:apply-templates select="chapter" mode="normal"/> </body> </html> </xsl:template> <xsl:template match="chapter" mode="normal"> <b>Chapter <xsl:value-of select="@number"/>. <xsl:value-of select="@title"/></b><br/><br/> <i><xsl:value-of select="text()"/></i><br/><br/> </xsl:template> <xsl:template match="chapter" mode="contents"> <xsl:value-of select="@number"/>. <xsl:value-of select="@title"/><br/> </xsl:template> </xsl:stylesheet>

27 XSLT: Другие возможности

XSLT: Другие возможности

Условия (<xsl:if>) Циклы (<xsl:for-each>) Переменные (<xsl:variable>) Сортировка (<xsl:sort>) Нумерация [1., 1.1., 1.1.а, 2.,] (<xsl:number>) Форматирование чисел (format-number()) Многошаговая обработка (mode) Работа со строками (через XPath) XSLT 2.0 (Draft) XPath 2.0 Создание собственных функций Анализ строк при помощи регулярных выражений Форматирование даты и времени

28 XSLT: Web “Skins”

XSLT: Web “Skins”

<aissearchscreen> <head><title>Person Search</title></head> <body> <input type="hidden" name="isAdvanced" value="false"/> <input show="always" type="text" label="Keyword" value="titov"/> <input type="checkbox" label="Fuzzy search" value="No"/> <result> <header> <tablecell>Full Name</tablecell> … </header> <row> <tablecell>Maksym TITOV</tablecell> <tablecell>71169</tablecell> <tablecell>40-3-C08</tablecell> … </row> <row> <tablecell>Oleg TITOV</tablecell> <tablecell>EXT</tablecell> … </row> … <rowcount>4</rowcount> </result> </body> </aissearchscreen>

29 XSLT: Web “Skins” - 2

XSLT: Web “Skins” - 2

XSLT

30 XSLT: Интерфейс пользователя

XSLT: Интерфейс пользователя

CERN Stores Catalog

Загрузка данных через XML Все данные хранятся в XML Чистый XML-XSLT 150000 наименований +10000 пользователей Используется ежесекундно ~15-20K XML на каждую страницу Страницы разного формата (переопределение XSLT)

31 XSLT: XML to Text

XSLT: XML to Text

Пример: Автоматическая генерация кода

Xml-описание

Программа

<document> <input type=“person” name=“A”/> <input type=“number” name=“B”/> … </document>

Интерфейс

Бизнес-логика

...

SQL

32 XSLT: XML to XML

XSLT: XML to XML

Обновление конфигурационных файлов XSL:FO

33 XSL-FO: Formatting Objects

XSL-FO: Formatting Objects

FO: xml-описание макета документа XSL-FO: XSLT преобразование документа XML в документ FO FOP processor: программа, преобразующая документ FO в формат для печати (PDF, PS, ...)

Документ XML

Документ FO

Документ PDF

Преобразование XSL:FO

FOP Processor

<?xml version="1.0"?> <presentation> <title> XXX </title> </presentation>

<fo:root> <fo:page-sequence> <fo:flow> ... </fo:flow> </fo:page-sequence> </fo:root>

34 XSL-FO: Formatting Objects

XSL-FO: Formatting Objects

FOP Processor: Apache FOP Processor

Шрифты Разбивка на страницы Колонтитулы Нумерация страниц Четные/нечетные страницы Отступы и интервалы Неразрывные абзацы «Висячие» строки Таблицы Графика …

FO обладает всеми возможностями современных текстовых редакторов:

35 XSL-FO: Пример

XSL-FO: Пример

«Банковская система»

XML

Поддержка PDF не требует написания дополнительного программного кода!

Web Interface

XSLT

Client Statement (PDF)

36 XML: Программная обработка

XML: Программная обработка

DOM (Document Object Model) Построение дерева SAX (Simple API for XML) Обработка событий startElement() endElement() Java, C++: Apache Xalan Oracle XML Parser …

PERL, .Net: Встроенные библиотеки

SAX - быстрее, DOM - универсальнее

37 It-корпорации и XML

It-корпорации и XML

Microsoft Adobe Sun Oracle

Чтобы лучше понять значение XML, посмотрим как относятся к нему ведущие IT-корпорации

38 XML и microsoft

XML и microsoft

Internet Explorer: просмотр XML, поддержка XSLT и XML-схем Разработчики стандарта XML-cхем Microsoft XML Parser Поддержка внутри Microsoft Office 2003 (XML, схемы) Поддержка в .Net Поддержка в SQL Server 2005: FOR XML (SQL Server 2000), XML Data Type, XQuery-запросы, поддержка схем, индексирование XML, ...

39 XML и microsoft

XML и microsoft

InfoPath 2003 Корпоративная система обработки электронных форм Полностью основана на XML Описание бизнес-правил в виде XML-схемы Проверка правильности ввода данных при помощи XML-схемы

40 XML и adobe

XML и adobe

Adobe Intellegent Document Platform

41 XML и oracle

XML и oracle

Oracle XML Parser Основной формат описания данных в JDeveloper, Oracle IAS, ... Oracle 9i: XML Data Type, XQuery-запросы, поддержка схем, индексирование XML, ... Oracle 10g: еще больше XML

42 XML и sun

XML и sun

XML API – стандартная библиотека Java 2 Веб-приложения - описание при помощи XML Сотрудничество с W3C и Apache XML Group

43 Заключение

Заключение

«XML является одним из важнейших достижений ИТ-технологий последних лет. Сегодня в мире насчитывается огромное количество XML-приложений, и с каждым годом это количество будет расти» Вывод: XML нужно знать и уметь его применять!

«Практическое использование XML»
http://900igr.net/prezentacija/informatika/prakticheskoe-ispolzovanie-xml-252622.html
cсылка на страницу
Урок

Информатика

130 тем
Слайды