XML. Разбор. Приложения

Содержание

Слайд 2

XML - спецификации

Extensible Markup Language (XML) 1.0. W3C Recommendation 10-Feb-1998 …
Extensible Markup Language

XML - спецификации Extensible Markup Language (XML) 1.0. W3C Recommendation 10-Feb-1998 …
(XML) 1.0 (Fifth Edition). W3C Recommendation 26-Nov-2008
Extensible Markup Language (XML) 1.1. W3C Recommendation 05-Nov-2003
Extensible Markup Language (XML) 1.1 (Second Edition). W3C Recommendation 16-Aug-2006 / 29-Sep-2006.

Слайд 3

Общая структура XML-документа


(“processing instructions”)

Общая структура XML-документа (“processing instructions”) …
[DTD]>
<имя-элемента>


Слайд 4

Разбор

Два уровня корректности XML-документов:
Well-formed – отсутствуют ошибки микросинтаксиса, документ может быть успешно

Разбор Два уровня корректности XML-документов: Well-formed – отсутствуют ошибки микросинтаксиса, документ может
разобран
Valid – документ соответствует заданному DTD.
Два типа программ разбора:
Валидирующие
Не валидирующие

Слайд 5

Разбор

Классы алгоритмов разбора
Событийные
Алгоритм генерирует вызовы функций-callback на каждый значимый элемент синтаксиса
DOM
Алгоритм оставляет

Разбор Классы алгоритмов разбора Событийные Алгоритм генерирует вызовы функций-callback на каждый значимый
в ОЗУ структуру данных (дерево), отражающее структуру документа, и доступную через интерфейсы DOM
!Сравнение подходов

Слайд 6

Событийный разбор

Синтаксические элементы, на которые генерируются вызовы функций
Открывающий тэг
Закрывающий тэг
Блок текста без

Событийный разбор Синтаксические элементы, на которые генерируются вызовы функций Открывающий тэг Закрывающий
разметки
Processing instruction
Entity
Некоторые другие

Слайд 7

Событийный разбор

Программное обеспечение
expat.c (С, free, доступна в исходном коде)
Интерфейс SAX (Simple API

Событийный разбор Программное обеспечение expat.c (С, free, доступна в исходном коде) Интерфейс
for XML)
Объектно-ориентированный интерфейс для событийного разбора
Первоначально ПО разбора с интерфейсом SAX разработано на языка Java (и для программ на Java)
Позднее ПО разбора с интерфейсом SAX появилось и для других языков
С++
Perl
Python
PHP (PHP5)
и проч.

Слайд 8

DOM - разбор

DOM API стандартизовано W3C
DOM API позволяет:
Анализировать документ
Модифицировать документ
Сериализировать докумет (преобразовать

DOM - разбор DOM API стандартизовано W3C DOM API позволяет: Анализировать документ
обратно в XML)
DOM – разбор реализован во многих библиотеках для XML для почти всех языков

Слайд 9

ПО разбора

expat.c («библиотека»)
MSXML (SAX, DOM, валид./невалид.; COM)
Apache Xerces (SAX, DOM, Java, C++,

ПО разбора expat.c («библиотека») MSXML (SAX, DOM, валид./невалид.; COM) Apache Xerces (SAX,
Perl)
Libxml2 (SAX, DOM-like, C, C++, Python, Pascal, Ruby, tcl, PHP5, Java)
+ gdome2: реализация DOM

Слайд 10

Приложения XML

XHTML
XML Schema
SVG
MathML
XForms
XQuery
SOAP
XLink/XPointer/XPath
XSL (“XML Stylesheet language”)

Приложения XML XHTML XML Schema SVG MathML XForms XQuery SOAP XLink/XPointer/XPath XSL (“XML Stylesheet language”)

Слайд 11

XSL

XSL - XML Stylesheet language
В отличие от элементов HTML/XHTML, у элементов (других

XSL XSL - XML Stylesheet language В отличие от элементов HTML/XHTML, у
приложений) XML нет способа отображения по умолчанию.
Тем более, у элементов языка разметки, только что созданного под некоторые нужды, такого отображения нет.

Слайд 12

XSL

XSLT – XSL Transformation
язык описания преобразования (перевода) документа из одного приложения XML

XSL XSLT – XSL Transformation язык описания преобразования (перевода) документа из одного
в другое

XSLT-процессор

xml 1

xml 2

XSLT – правила трансляции

Слайд 13

XSL

XSL-FO (XSL Formatting objects)
Язык описания представления данных, выводимых на печать.

XSLT-процессор

xml 1

xml 2

XSLT

XSL XSL-FO (XSL Formatting objects) Язык описания представления данных, выводимых на печать.
– правила трансляции

XSL-FO

Postscript
PDF
Отображение
на экран

XHTML


Имя файла: XML.-Разбор.-Приложения.pptx
Количество просмотров: 26
Количество скачиваний: 0