Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

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

Содержание

XMLeXtensible Markup Language«Расширяемый язык разметки»SGML (стандарт ISO, 1986)В основном для технической документацииXML (стандарт W3C, 1998)Упрощение и развитие SGML, широкая область применения
Практическое использование XMLРостислав ТитовГруппа е-бизнеса отдела ИТЦЕРН – Женева, Швейцария XMLeXtensible Markup Language«Расширяемый язык разметки»SGML (стандарт ISO, 1986)В основном для технической документацииXML Rostislav		Titov				XML (Extensible Markup Language) is …		XML: Правила построенияЗаголовокОдин корневой тэгИерархия тэговАтрибутыНекоторые правилаИмена XML: Деревоpresentationauthorfirstnamelastnamechapterchapterchaptertexttexttexttexttext XML: Передача данныхНезависимость от платформы и языкаПростота создания, простота обработкиПонятность для человека XML: Передача данныхВнешняя программаEDHXMLАвтоматическая генерация форм из внешних программXML в качестве формата Web ServicesWeb service  WSDLXML  SOAPXMLОбмен данными между программами через ИнтернетСтандартНезависимость XML: Хранение данныхХранение структуры данных вместе с даннымиОбъектное «дополнение» реляционных СУБДПроверка структурыПоддержка XML: Хранение данныхПример: Поисковая система EDHРешение:Все документы хранятся в XMLКонтекстный поиск по XML: Преобразование данныхXML может быть преобразован в HTML,  текст, PDF, ... XML: Стандарты на базе XMLВозможность формального описания структурыНезависимость от платформы и языкаПонятность Формализация структуры XMLСуществуют способы формального определения структуры XML-документов DTD (Document Type Definition) XML-схема: когда это нужно?Формальное описание структуры для будущего использованияПрограммисты могут не беспокоиться XML-схема: когда это НЕ нужно?Когда заведомо известно, что XML имеет правильную структуруКогда XML-схема: возможностиНабор и порядок следования элементовПоследовательный порядок элементов (sequence)  или выбор XML-схема: демонстрация XPath: Навигация по XMLC:\presentation\author\firstname/presentation/author/firstnameЭлемент XMLНабор элементовЛогическое выражениеСтрокаЧислоПустое множество XPath: ПримерыНайти имя ректора /institute/rector/person/text()Найти названия факультетов /institute/faculty/@nameНайти всех сотрудников //personНайти имя XPath: ПримерыПример: Система обработки событийСравнение  события c XPath  подпискиСобытияПодписка на XPath: Использование в программах Element root = xml.getDocumentElement(); Node  child; Зачем нужен XPath«XPath является критической  составляющей XML-преобразований (XSLT)  и запросов XQuery. » XQuery – Язык XML запросовXQuery – это SQL для XMLНезависимость от конкретной XSLT: XML TransformationsTransforms XML to HTML, text or other XMLXSLT 1.0 (Current), XSLT: Упрощенная структураxsl:stylesheetxsl:templatexsl:templatexsl:value-ofxsl:value-ofxsl:apply-templates XSLT: Пример																Author: 				Table of Contents																						Chapter . 							. XSLT: Другие возможностиУсловия ()Циклы ()Переменные ()Сортировка ()Нумерация [1., 1.1., 1.1.а, 2.,] ()Форматирование XSLT: Web “Skins”  	Person Search																Full Name				…										Maksym TITOV				71169				40-3-C08				…										Oleg TITOV				EXT				…						…			4 XSLT: Web “Skins” - 2XSLT XSLT: Интерфейс пользователяCERN Stores CatalogЗагрузка данных через XML Все данные хранятся в XSLT: XML to TextПример:Автоматическая генерация кода       …ИнтерфейсXML-описаниеПрограммаБизнес-логикаSQL... XSLT: XML to XMLОбновление конфигурационных файловXSL:FO XSL-FO: Formatting ObjectsFO: XML-описание макета документаXSL-FO: XSLT преобразование документа XML в документ XSL-FO: Formatting ObjectsШрифтыРазбивка на страницыКолонтитулыНумерация страницЧетные/нечетные страницыОтступы и интервалыНеразрывные абзацы«Висячие» строкиТаблицыГрафика…FO обладает XSL-FO: ПримерXML«Банковская система»XSLTWeb InterfaceClient Statement (PDF)Поддержка PDF не требует написания дополнительного программного кода! XML: Программная обработкаDOM (Document Object Model)Построение дерева SAX (Simple API for XML)Обработка IT-корпорации и XMLЧтобы лучше понять значение XML, посмотрим как относятся к нему XML и MicrosoftInternet Explorer: просмотр XML, поддержка XSLT и XML-схемРазработчики стандарта XML-cхемMicrosoft XML и MicrosoftInfoPath 2003Корпоративная система обработки электронных формПолностью основана на XMLОписание бизнес-правил XML и AdobeAdobe Intellegent Document Platform XML и OracleOracle XML ParserОсновной формат описания данных в JDeveloper, Oracle IAS, XML и SunXML API – стандартная библиотека Java 2Веб-приложения - описание при Заключение«XML является одним из важнейших достижений ИТ-технологий последних лет. Сегодня в мире
Слайды презентации

Слайд 2 XML
eXtensible Markup Language
«Расширяемый язык разметки»
SGML (стандарт ISO, 1986)
В

XMLeXtensible Markup Language«Расширяемый язык разметки»SGML (стандарт ISO, 1986)В основном для технической

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

SGML, широкая область применения


Слайд 3











Bevezetés
Szöveg
Jelölés


Mégtöbb dokumentum jelölés
Foglalt attribútumok
Feldolgozó utasítások

Введение
Текст
Разметка


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

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

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


Слайд 4


Rostislav
Titov


XML (Extensible

Rostislav		Titov				XML (Extensible Markup Language) is …		XML: Правила построенияЗаголовокОдин корневой тэгИерархия тэговАтрибутыНекоторые

Markup Language) is …




XML: Правила построения
Заголовок
Один корневой тэг
Иерархия тэгов
Атрибуты
Некоторые

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



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

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


Слайд 5 XML: Дерево
presentation
author
firstname
lastname
chapter
chapter
chapter
text
text
text
text
text

XML: Деревоpresentationauthorfirstnamelastnamechapterchapterchaptertexttexttexttexttext

Слайд 6 XML: Передача данных
Независимость от платформы и языка
Простота создания,

XML: Передача данныхНезависимость от платформы и языкаПростота создания, простота обработкиПонятность для

простота обработки
Понятность для человека и компьютера
Открытый стандарт
Большое количество библиотек

обработки
Большое количество литературы
Специализированные XML-редакторы
Возможность проверки структуры

Слайд 7
XML: Передача данных
Внешняя программа
EDH
XML
Автоматическая генерация форм из внешних программ
XML

XML: Передача данныхВнешняя программаEDHXMLАвтоматическая генерация форм из внешних программXML в качестве

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

данных

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


Слайд 8 Web Services
Web service
WSDL
XML
SOAP
XML
Обмен данными между программами через Интернет
Стандарт
Независимость от

Web ServicesWeb service WSDLXML SOAPXMLОбмен данными между программами через ИнтернетСтандартНезависимость от

платформы и языка (Java, .Net, …)
WSDL – Web Service

Definition Language
SOAP – Simple Object Access Protocol

Слайд 9 XML: Хранение данных
Хранение структуры данных вместе с данными
Объектное

XML: Хранение данныхХранение структуры данных вместе с даннымиОбъектное «дополнение» реляционных СУБДПроверка

«дополнение» реляционных СУБД
Проверка структуры
Поддержка на уровне баз данных
Microsoft

SQL Server 2000 +, Oracle 9i +,
Специальный тип данных для хранения XML
Специализированные XML-индексы
Запросы к XML (XQuery и пр.)
Выдача данных в формате XML


Слайд 10 XML: Хранение данных
Пример: Поисковая система EDH
Решение:
Все документы хранятся

XML: Хранение данныхПример: Поисковая система EDHРешение:Все документы хранятся в XMLКонтекстный поиск

в XML
Контекстный поиск по XML (Oracle InterMedia)

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

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


Слайд 11 XML: Преобразование данных
XML может быть преобразован в HTML,

XML: Преобразование данныхXML может быть преобразован в HTML, текст, PDF, ...

текст, 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Существуют способы формального определения структуры XML-документов DTD (Document Type


DTD (Document Type Definition)

XML-Схема (XML Schema)
Устарело!
Не для

новых разработок

Слайд 14 XML-схема: когда это нужно?
Формальное описание структуры для будущего

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

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

могут заблаговременно проверить их правильность

Слайд 15 XML-схема: когда это НЕ нужно?
Когда заведомо известно, что

XML-схема: когда это НЕ нужно?Когда заведомо известно, что XML имеет правильную

XML имеет правильную структуру
Когда правильность структуры не играет роли
Когда

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

Слайд 16 XML-схема: возможности
Набор и порядок следования элементов
Последовательный порядок элементов

XML-схема: возможностиНабор и порядок следования элементовПоследовательный порядок элементов (sequence) или выбор

(sequence) или выбор (choice)
Количество повторений элементов и групп элементов
Набор

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



Слайд 17 XML-схема: демонстрация

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

Слайд 18 XPath: Навигация по XML


C:\presentation\author\firstname
/presentation/author/firstname

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

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

XPath: Навигация по XMLC:\presentation\author\firstname/presentation/author/firstnameЭлемент XMLНабор элементовЛогическое выражениеСтрокаЧислоПустое множество

Слайд 19 XPath: Примеры
Найти имя ректора
/institute/rector/person/text()
Найти названия факультетов
/institute/faculty/@name
Найти

XPath: ПримерыНайти имя ректора /institute/rector/person/text()Найти названия факультетов /institute/faculty/@nameНайти всех сотрудников //personНайти

всех сотрудников
//person
Найти имя декана факультета «Б»
/institute/faculty[@shortname=“Б”]/dean/person/text()
Найти

имя второго по счету заместителя Малюка А. А.
//dean/person[starts-with(., “Малюк”)] /../../deputies/person[position() = 2]



Слайд 20 XPath: Примеры
Пример: Система обработки событий
Сравнение события c XPath подписки
События
Подписка

XPath: ПримерыПример: Система обработки событийСравнение события c XPath подпискиСобытияПодписка на событияXPathXPathСистема

на события
XPath
XPath
Система обработки
Уведомление пользователей
«Хочу уведомления о всех документах на сумму

более 600 CHF»

/ document [amount > 600]


Слайд 21 XPath: Использование в программах
Element root = xml.getDocumentElement();

XPath: Использование в программах Element root = xml.getDocumentElement(); Node child;

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());
}
}

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

XPath

DOM Model


Слайд 22 Зачем нужен XPath
«XPath является критической составляющей XML-преобразований (XSLT)

Зачем нужен XPath«XPath является критической составляющей XML-преобразований (XSLT) и запросов XQuery. »

и запросов XQuery. »


Слайд 23 XQuery – Язык XML запросов
XQuery – это SQL

XQuery – Язык XML запросовXQuery – это SQL для XMLНезависимость от

для XML
Независимость от конкретной СУБД
Простота использования
Поддержка популярными СУБД (Microsoft

SQL Server 2003, Oracle 9i и10g)
Базируется на XPath, но более понятен и может работать на множестве документов


Слайд 24 XSLT: XML Transformations
Transforms XML to HTML, text or

XSLT: XML TransformationsTransforms XML to HTML, text or other XMLXSLT 1.0

other XML
XSLT 1.0 (Current), XSLT 2.0 (Draft)
XSLT is a

“Human Interface” to XML
Supported by Web Browsers

Слайд 25

XSLT: Упрощенная структура
xsl:stylesheet
xsl:template
xsl:template
xsl:value-of
xsl:value-of
xsl:apply-templates


XSLT: Упрощенная структураxsl:stylesheetxsl:templatexsl:templatexsl:value-ofxsl:value-ofxsl:apply-templates      …  XSLT





XSLT

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




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

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

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


Слайд 26 XSLT: Пример



XSLT: Пример																Author: 				Table of Contents																						Chapter . 							.

match="presentation">



Author:
Table of Contents


select="chapter" mode="contents"/>









Chapter .








.





Слайд 27 XSLT: Другие возможности
Условия ()
Циклы ()
Переменные ()
Сортировка ()
Нумерация [1.,

XSLT: Другие возможностиУсловия ()Циклы ()Переменные ()Сортировка ()Нумерация [1., 1.1., 1.1.а, 2.,]

1.1., 1.1.а, 2.,] ()
Форматирование чисел (format-number())
Многошаговая обработка (mode)
Работа со

строками (через XPath)

XSLT 2.0 (Draft)
XPath 2.0
Создание собственных функций
Анализ строк при помощи регулярных выражений
Форматирование даты и времени



Слайд 28 XSLT: Web “Skins”

Person Search

XSLT: Web “Skins” 	Person Search																Full Name				…										Maksym TITOV				71169				40-3-C08				…										Oleg TITOV				EXT				…						…			4

value="false"/>




Full

Name



Maksym TITOV
71169
40-3-C08



Oleg TITOV
EXT



4




Слайд 29 XSLT: Web “Skins” - 2

XSLT

XSLT: Web “Skins” - 2XSLT

Слайд 30 XSLT: Интерфейс пользователя
CERN Stores Catalog
Загрузка данных через XML

XSLT: Интерфейс пользователяCERN Stores CatalogЗагрузка данных через XML Все данные хранятся


Все данные хранятся в XML
Чистый XML-XSLT
150000 наименований
+10000 пользователей
Используется ежесекундно
~15-20K

XML на каждую страницу
Страницы разного формата (переопределение XSLT)


Слайд 31 XSLT: XML to Text
Пример:
Автоматическая генерация кода

XSLT: XML to TextПример:Автоматическая генерация кода    …ИнтерфейсXML-описаниеПрограммаБизнес-логикаSQL...

type=“person” name=“A”/>


Интерфейс
XML-описание
Программа
Бизнес-логика
SQL
...


Слайд 32 XSLT: XML to XML
Обновление конфигурационных файлов

XSL:FO

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

Слайд 33 XSL-FO: Formatting Objects
FO: XML-описание макета документа
XSL-FO: XSLT преобразование

XSL-FO: Formatting ObjectsFO: XML-описание макета документаXSL-FO: XSLT преобразование документа XML в

документа XML в документ FO
FOP Processor: программа, преобразующая документ

FO в формат для печати (PDF, PS, ...)



<br> XXX<br>






...



Документ XML

Документ FO

Документ PDF

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

FOP Processor


Слайд 34 XSL-FO: Formatting Objects
Шрифты
Разбивка на страницы
Колонтитулы
Нумерация страниц
Четные/нечетные страницы
Отступы и

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

интервалы
Неразрывные абзацы
«Висячие» строки
Таблицы
Графика



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

Processor:
Apache FOP Processor

Слайд 35 XSL-FO: Пример
XML
«Банковская система»
XSLT
Web Interface
Client Statement (PDF)
Поддержка PDF не

XSL-FO: ПримерXML«Банковская система»XSLTWeb InterfaceClient Statement (PDF)Поддержка PDF не требует написания дополнительного программного кода!

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


Слайд 36 XML: Программная обработка
DOM (Document Object Model)
Построение дерева
SAX

XML: Программная обработкаDOM (Document Object Model)Построение дерева SAX (Simple API for

(Simple API for XML)
Обработка событий
startElement()
endElement()
Java, C++:
Apache Xalan
Oracle XML Parser



PERL,

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

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


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

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

как относятся к нему ведущие IT-корпорации
Microsoft
Adobe
Sun

Oracle


Слайд 38 XML и Microsoft
Internet Explorer: просмотр XML, поддержка XSLT

XML и MicrosoftInternet Explorer: просмотр XML, поддержка XSLT и XML-схемРазработчики стандарта

и 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
InfoPath 2003
Корпоративная система обработки электронных форм
Полностью

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

основана на XML
Описание бизнес-правил в виде XML-схемы
Проверка правильности ввода

данных при помощи XML-схемы

Слайд 40 XML и Adobe
Adobe Intellegent Document Platform

XML и AdobeAdobe Intellegent Document Platform

Слайд 41 XML и Oracle
Oracle XML Parser
Основной формат описания данных

XML и OracleOracle XML ParserОсновной формат описания данных в JDeveloper, Oracle

в JDeveloper, Oracle IAS, ...
Oracle 9i: XML Data Type,

XQuery-запросы, поддержка схем, индексирование XML, ...
Oracle 10g: еще больше XML

Слайд 42 XML и Sun
XML API – стандартная библиотека Java

XML и SunXML API – стандартная библиотека Java 2Веб-приложения - описание

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

Apache XML Group


  • Имя файла: prakticheskoe-ispolzovanie-xml.pptx
  • Количество просмотров: 122
  • Количество скачиваний: 0