Стандарт XML. EXtensible Markup Language

Содержание

Слайд 2

ВОПРОСЫ Определение XML Применение XML Пример XML-документа Правила создания XML-документа DOM

ВОПРОСЫ

Определение XML Применение XML
Пример XML-документа
Правила создания XML-документа
DOM XML-документа, виды узлов
Валидация XML-документа, способы

контроля.
DTD- описание, пример.
XML и CSS.
XML и XLS (дополнительно).
Слайд 3

РАСШИРЯЕМЫЙ ЯЗЫК РАЗМЕТКИ XML Это производный язык разметки документов, позволяющий структурировать

РАСШИРЯЕМЫЙ ЯЗЫК РАЗМЕТКИ XML

Это производный язык разметки документов, позволяющий структурировать информацию

разного типа.
XML является стандартом создания собственного языка разметки, позволяет создавать собственные теги и использовать их на странице
XML можно определить как систему, управляющую данными
XML — это текстовый формат, удобный для хранения и передачи структурированных данных.
Слайд 4

ИСТОРИЯ XML 1969 год - разработан GML (Generalized Markup Language), который

ИСТОРИЯ XML

1969 год - разработан GML (Generalized Markup Language), который состоял

из слов, описывающих части официального документа
1974 год - GML был преобразован в новый универсальный язык разметки SGML, который был принят как стандарт в электронном издательстве (ISO 8879). SGML был очень сложным, после его упрощения был создан HTML.
1998 год - консорциум Всемирной сети (World Wide Web Consortium) принял стандарт XML
Слайд 5

ПРИМЕНЕНИЕ ЯЗЫКА XML 1. для разработчиков сложных информационных систем, с большим

ПРИМЕНЕНИЕ ЯЗЫКА XML

1. для разработчиков сложных информационных систем, с большим количеством

приложений, связанных потоками информации самой различной структурой. В этом случае XML - документы выполняют роль универсального формата для обмена информацией между отдельными компонентами большой программы.
Слайд 6

ПРИМЕНЕНИЕ ЯЗЫКА XML 2. XML является базовым стандартом для языка описания

ПРИМЕНЕНИЕ ЯЗЫКА XML

2. XML является базовым стандартом для языка описания ресурсов,

RDF, позволяющего упростить многие проблемы в Web, связанные с поиском нужной информации, обеспечением контроля за содержимым сетевых ресурсов, создания электронных библиотек и т.д.
Слайд 7

ПРИМЕНЕНИЕ ЯЗЫКА XML 3. Язык XML позволяет описывать данные произвольного типа

ПРИМЕНЕНИЕ ЯЗЫКА XML

3. Язык XML позволяет описывать данные произвольного типа и

используется для представления специализированной информации, например химических, математических, физических формул, медицинских рецептов, нотных записей, и т.д. Это означает, что XML может служить мощным дополнением к HTML для распространения в Web "нестандартной" информации. Возможно, в самом ближайшем будущем XML полностью заменит собой HTML, по крайней мере, первые попытки интеграции этих двух языков уже делаются (спецификация XHTML).
Слайд 8

ПРИМЕНЕНИЕ ЯЗЫКА XML 4. XML-документы могут использоваться в качестве промежуточного формата

ПРИМЕНЕНИЕ ЯЗЫКА XML

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

в трехзвенных системах. Обычно схема взаимодействия между серверами приложений и баз данных зависит от конкретной СУБД и диалекта SQL, используемого для доступа к данным. Если же результаты запроса будут представлены в некотором универсальном текстовом формате, то звено СУБД, как таковое, станет "прозрачным" для приложения.
Слайд 9

ПРИМЕНЕНИЕ ЯЗЫКА XML 5. Информация, содержащаяся в XML-документах, может изменяться, передаваться

ПРИМЕНЕНИЕ ЯЗЫКА XML

5. Информация, содержащаяся в XML-документах, может изменяться, передаваться на

машину клиента и обновляться по частям. Разрабатываемые спецификации XLink и Xpointer поволят ссылаться на отдельные элементы документа, c учетом их вложенности и значений атрибутов.
Слайд 10

ПРИМЕНЕНИЕ ЯЗЫКА XML 6. Использование стилевых таблиц (XSL) позволяет обеспечить независимое

ПРИМЕНЕНИЕ ЯЗЫКА XML

6. Использование стилевых таблиц (XSL) позволяет обеспечить независимое от

конкретного устройства вывода отображение XML- документов.
Слайд 11

ПРИМЕНЕНИЕ ЯЗЫКА XML 7. XML может использоваться в обычных приложениях для

ПРИМЕНЕНИЕ ЯЗЫКА XML

7. XML может использоваться в обычных приложениях для хранения

и обработки структурированных данных в едином формате.
Слайд 12

ЧТО ТАКОЕ XML? XML-документ представляет собой обычный текстовый файл, в котором

ЧТО ТАКОЕ XML?

XML-документ представляет собой обычный текстовый файл, в котором при

помощи специальных маркеров создаются элементы данных, последовательность и вложенность которых определяет структуру документа и его содержание.
Слайд 13

ЭЛЕМЕНТ

ЭЛЕМЕНТ

Слайд 14

XML И HTML XML, безусловно, сильно отличается по своим возможностям и

XML И HTML

XML, безусловно, сильно отличается по своим возможностям и предназначению

от языка гипертекстовой разметки, оба эти языка являются подмножествами SGML, и, следовательно, наследуют его базовые принципы.
Слайд 15

СОЗДАНИЕ XML ДОКУМЕНТА Мастер и маргарита Михаил Булгаков Ленинградское издательство (Лениздат)

СОЗДАНИЕ XML ДОКУМЕНТА




Мастер и маргарита
Михаил Булгаков
Ленинградское

издательство (Лениздат)
512
74р.


Ревизор
Николай Гоголь
Искатель
80
37р.


Слайд 16

ТЕЛО ДОКУМЕНТА XML состоит из элементов разметки (markup); содержимого документа -

ТЕЛО ДОКУМЕНТА XML

состоит из
элементов разметки (markup);
содержимого документа - данных (content).
XML -

тэги предназначены для определения элементов документа, их атрибутов и других конструкций языка.
Слайд 17

ИНСТРУКЦИЯ Любой XML- документ должен всегда начинаться с инструкции , внутри

ИНСТРУКЦИЯ

Любой XML- документ должен всегда начинаться с инструкции , внутри

которой также можно задавать номер версии языка, номер кодовой страницы и другие параметры, необходимые программе-анализатору в процессе разбора документа
Первая строка XML-документа называется объявлением XML (англ. XML declaration) — это необязательная строка, указывающая версию стандарта XML, также здесь может быть указана кодировка символов и внешние зависимости.
Слайд 18

ПРАВИЛА СОЗДАНИЯ XML- ДОКУМЕНТА Документ должен иметь только один элемент верхнего

ПРАВИЛА СОЗДАНИЯ XML- ДОКУМЕНТА

Документ должен иметь только один элемент верхнего уровня

(элемент Документ или корневой элемент). Все другие элементы должны быть вложены в элемент верхнего уровня.
Элементы должны быть вложены упорядоченным образом. То есть, если элемент начинается внутри другого элемента, он должен и заканчиваться внутри этого элемента.
Каждый элемент должен иметь начальный и конечный тег. В отличие от HTML, в XML не разрешается опускать конечный тег – даже в том случае, когда браузер в состоянии определить, где заканчивается элемент.
Имя типа элемента в начальном теге должно в точности соответствовать имени в соответствующем конечном теге.
Имена типов элементов чувствительны к регистру, в котором они набраны. В действительности весь текст внутри XML-разметки является чувствительным к регистру.
Слайд 19

КОНСТРУКЦИИ ЯЗЫКА Содержимое XML- документа представляет собой набор элементов, секций CDATA,

КОНСТРУКЦИИ ЯЗЫКА

Содержимое XML- документа представляет собой набор элементов, секций CDATA, директив

анализатора, комментариев, спецсимволов, текстовых данных.
Слайд 20

XML-ДОКУМЕНТ СОСТОИТ ИЗ ДВУХ ОСНОВНЫХ ЧАСТЕЙ: пролога и элемента Документ

XML-ДОКУМЕНТ СОСТОИТ ИЗ ДВУХ ОСНОВНЫХ ЧАСТЕЙ:

пролога и элемента Документ

Слайд 21

ОБЪЕКТНАЯ МОДЕЛЬ XML Объектная модель документа (DOM - Document Object Model)

ОБЪЕКТНАЯ МОДЕЛЬ XML

Объектная модель документа (DOM - Document Object Model) является

независимым от платформы реализации языком.
С точки зрения программиста он представляется в виде Интерфейса Прикладного Программирования (API - Application Programming Interface), который предоставляет программам доступ и манипулирование содержанием и структурой XML.
Слайд 22

ПРИМЕР Программирование Иванов И.И. Информатика Петров П.П.

ПРИМЕР



Программирование
Иванов И.И.


Информатика
Петров П.П.


Слайд 23

УЗЛЫ ДЕРЕВА ПРИМЕРА

УЗЛЫ ДЕРЕВА ПРИМЕРА

Слайд 24

ВИДЫ УЗЛОВ Корневой узел – самый верхний узел дерева, соответствующий корневому

ВИДЫ УЗЛОВ

Корневой узел – самый верхний узел дерева, соответствующий корневому элементу

XML документа.
Родительский узел (parent node) – узел из которого наследуются узлы более низкого уровня дерева. Соответствует понятию контейнера в структуре XML документа.
Дочерний узел (child node) – узел, который наследуется из узла более высокого уровня. Соответствует, в структуре XML документа, понятию вложенного в контейнер элемента.
Узлы братья (siblings) – одноуровневые узлы, принадлежащие одному родителю. В структуре XML документа это узлы непосредственно вложенные в контейнер.
Слайд 25

Для того чтобы построить дерево XML документа, он должен быть обработан анализатором

Для того чтобы построить дерево XML документа, он должен быть обработан

анализатором
Слайд 26

ЭЛЕМЕНТЫ ДАННЫХ Элемент - это структурная единица XML- документа. В общем

ЭЛЕМЕНТЫ ДАННЫХ

Элемент - это структурная единица XML- документа.
В общем случае

в качестве содержимого элементов могут выступать как просто какой-то текст, так и другие, вложенные, элементы документа, секции CDATA, инструкции по обработке, комментарии, - т.е. практически любые части XML- документа.
Набором всех элементов, содержащихся в документе, задается его структура и определяются все иерархическое соотношения.
Слайд 27

СПЕЦИАЛЬНЫЕ СИМВОЛЫ Для того, чтобы включить в документ символ, используемый для

СПЕЦИАЛЬНЫЕ СИМВОЛЫ

Для того, чтобы включить в документ символ, используемый для определения

каких-либо конструкций языка (например, символ угловой скобки) и не вызвать при этом ошибок в процессе разбора такого документа, нужно использовать его специальный символьный либо числовой идентификатор.
Например, < , > " или $(десятичная форма записи),  (шестнадцатеричная) и т.д.
Строковые обозначения спецсиволов могут определяться в XML документе при помощи компонентов (entity).
Слайд 28

АЛЬТЕРНАТИВНЫЕ СОЧЕТАНИЯ СИМВОЛОВ

АЛЬТЕРНАТИВНЫЕ СОЧЕТАНИЯ СИМВОЛОВ

Слайд 29

КОММЕНТАРИИ Комментариями является любая область данных, заключенная между последовательностями символов Комментарии

КОММЕНТАРИИ

Комментариями является любая область данных, заключенная между последовательностями символов
Комментарии пропускаются анализатором и поэтому при разборе структуры документа в качестве значащей информации не рассматриваются.

Слайд 30

ОТЛИЧИЕ ОТ HTML В отличие от HTML, который игнорирует повторы пробелов,

ОТЛИЧИЕ ОТ HTML

В отличие от HTML, который игнорирует повторы пробелов, XML

сохраняет полную длину строки из пробелов.
Слайд 31

АТРИБУТЫ Атрибут - это пара "название" = "значение", которую надо задавать

АТРИБУТЫ

Атрибут - это пара "название" = "значение", которую надо задавать при

определении элемента в начальном тэге.
Пример:
#ff08ff white
или
Ivan Petrov
Слайд 32

ДИРЕКТИВЫ АНАЛИЗАТОРА Инструкции, предназначенные для анализаторов языка, описываются в XML документе

ДИРЕКТИВЫ АНАЛИЗАТОРА

Инструкции, предназначенные для анализаторов языка, описываются в XML документе при

помощи специальных тэгов - ;.
Программа клиента использует эти инструкции для управления процессом разбора документа.
Наиболее часто инструкции используются при определении типа документа (например, ) или создании пространства имен.
Слайд 33

CDATA Внутри этого блока можно помещать любую информацию, которая может понадобится

CDATA

Внутри этого блока можно помещать любую информацию, которая может понадобится

программе- клиенту для выполнения каких-либо действий (в область CDATA, можно помещать, например, инструкции JavaScript).
Необходимо следить за тем, чтобы в области, ограниченной этими тэгами не было последовательности символов ]].
Слайд 34

ВАЛИДАЦИЯ XML-ДОКУМЕНТА Если XML- документ не нарушает правила построения, то он

ВАЛИДАЦИЯ XML-ДОКУМЕНТА

Если XML- документ не нарушает правила построения, то он называется

формально-правильным и все анализаторы, предназначенные для разбора XML- документов, смогут работать с ним корректно.
Слайд 35

СПОСОБЫ КОНТРОЛЯ ПРАВИЛЬНОСТИ XML-ДОКУМЕНТА DTD – определения (Document Type Definition) Схемы данных(Semantic Schema)

СПОСОБЫ КОНТРОЛЯ ПРАВИЛЬНОСТИ XML-ДОКУМЕНТА

DTD – определения (Document Type Definition)
Схемы данных(Semantic Schema)

Слайд 36

ДОБАВЛЕНИЕ DTD Объявление типа документа представляет собой блок XML-разметки, который вы

ДОБАВЛЕНИЕ DTD

Объявление типа документа представляет собой блок XML-разметки, который вы должны

добавить в пролог валидного XML-документа. Он может располагаться в любом месте пролога – вне другой разметки – после XML-объявления
DTD состоит из символа левой квадратной скобки ([), после которой следует ряд объявлений разметки, заканчивающихся правой квадратной скобкой (]).
Слайд 37

DTD МОЖЕТ СОДЕРЖАТЬ СЛЕДУЮЩИЕ ТИПЫ ОБЪЯВЛЕНИЙ РАЗМЕТКИ Объявления типов элементов. Они

DTD МОЖЕТ СОДЕРЖАТЬ СЛЕДУЮЩИЕ ТИПЫ ОБЪЯВЛЕНИЙ РАЗМЕТКИ

Объявления типов элементов. Они определяют

типы элементов, которые может содержать документ, а также содержимое и порядок следования элементов.
Объявления списков атрибутов. Каждое объявление списков атрибутов задает имена атрибутов, которые могут быть использованы с определенным типом элемента, а также типы данных и устанавливаемые по умолчанию значения этих атрибутов.
Объявления примитивов. Вы можете использовать примитивы для хранения часто используемых фрагментов текста или для встраивания не относящихся к XML данных в ваш документ.
Объявления нотаций. Нотация описывает формат данных или идентифицирует программу, используемую для обработки определенного формата.
Инструкции по обработке.
Комментарии.
Ссылки на параметрические примитивы. Любой из приведенных выше компонентов может содержаться внутри параметрического примитива и добавляться путем ссылки на параметрический примитив.
Слайд 38

Слайд 39

БЛОКИ DTD Элементы (Elements). Элементы могут содержать текст, другие элементы или

БЛОКИ DTD

Элементы (Elements). Элементы могут содержать текст, другие элементы или быть

пустыми.
Атрибуты (Attributes). Атрибуты всегда размещаются внутри открывающего тэга элемента. Атрибуты всегда записываются в виде пары имя/значение.
Entities.
PCDATA. Означает структурированные символьные данные. Подлежит анализу с помощью парсера на наличие специальных символов (entities) и элементов разметки.
CDATA. Означает текст, содержимое которого не рассматривается анализатором
Слайд 40

ОПЕРАТОРЫ, ЗАДАЮЩИЕ МНОЖЕСТВЕННОСТЬ ВХОЖДЕНИЯ ‘+’: один и более раз, например, ‘*’:

ОПЕРАТОРЫ, ЗАДАЮЩИЕ МНОЖЕСТВЕННОСТЬ ВХОЖДЕНИЯ

‘+’: один и более раз, например,

(message+)>
‘*’: ноль и более раз, например,
‘?’: ноль и один раз, например,
Слайд 41

ОБЪЯВЛЕНИЕ ВИДА указывает на возможность вхождения в элемент note другого элемента: message ИЛИ body.

ОБЪЯВЛЕНИЕ ВИДА

указывает на возможность вхождения в элемент note

другого элемента: message ИЛИ body.
Слайд 42

ОПИСАНИЕ АТРИБУТОВ например: Соответствует XML коду: .

ОПИСАНИЕ АТРИБУТОВ


например:

Соответствует XML

коду:
.
Слайд 43

ТИП АТРИБУТА

ТИП АТРИБУТА

Слайд 44

ЗНАЧЕНИЕ ПО УМОЛЧАНИЮ МОЖЕТ БЫТЬ ОДНИМ ИЗ СЛЕДУЮЩИХ

ЗНАЧЕНИЕ ПО УМОЛЧАНИЮ МОЖЕТ БЫТЬ ОДНИМ ИЗ СЛЕДУЮЩИХ

Слайд 45

СТАНДАРТОМ ОПРЕДЕЛЕНЫ ДВА УРОВНЯ ПРАВИЛЬНОСТИ ДОКУМЕНТА XML: Правильно построенный (Well-formed). Правильно

СТАНДАРТОМ ОПРЕДЕЛЕНЫ ДВА УРОВНЯ ПРАВИЛЬНОСТИ ДОКУМЕНТА XML:

Правильно построенный (Well-formed). Правильно построенный

документ соответствует всем правилам синтаксиса XML.
Действительный (Valid). Действительный документ дополнительно соответствует некоторым семантическим правилам. Это более строгая дополнительная проверка корректности документа на соответствие заранее определённым, но уже внешним правилам, в целях минимизации количества ошибок, например, структуры и состава данного, конкретного документа или семейства документов.
Слайд 46

ДЕЙСТВИТЕЛЬНЫЕ XML ДОКУМЕНТЫ СОДЕРЖАТ ССЫЛКУ НА DTD ФАЙЛ

ДЕЙСТВИТЕЛЬНЫЕ XML ДОКУМЕНТЫ СОДЕРЖАТ ССЫЛКУ НА DTD ФАЙЛ


Слайд 47

DTD СХЕМА ]>

DTD СХЕМА



from (#PCDATA)>


]>
Слайд 48

ПРОВЕРКА ВАЛИДНОСТИ использовать специальные валидаторы, например W3C валидатор (http://validator.w3.org/). Для проверки

ПРОВЕРКА ВАЛИДНОСТИ

использовать специальные валидаторы, например W3C валидатор (http://validator.w3.org/).
Для проверки схем

также существуют специальные валидаторы
Согласно спецификации W3C XML программа должна прекратить обработку XML документа, как только будет обнаружена ошибка в этом документе
Слайд 49

DTD СХЕМА DTD (Document Type Definition) определяет допустимые строительные блоки XML

DTD СХЕМА

DTD (Document Type Definition) определяет допустимые строительные блоки XML документа,

путем указания списка допустимых элементов и атрибутов.
DTD может описываться как внутри XML документа, так и с помощью внешней ссылки.
Слайд 50

ПРИМЕР ВНУТРЕННЕГО ОПИСАНИЯ ]> user1@domain.ru user2@domain.ru Встреча Позвони мне завтра утром

ПРИМЕР ВНУТРЕННЕГО ОПИСАНИЯ



(#PCDATA)>



]>


user1@domain.ru
user2@domain.ru
< subject >Встреча
Позвони мне завтра утром


Слайд 51

В ДАННОМ ПРИМЕРЕ: !DOCTYPE mail определяет корневой элемент документа mail. !ELEMENT

В ДАННОМ ПРИМЕРЕ:

!DOCTYPE mail определяет корневой элемент документа mail.
!ELEMENT note определяет

элемент note, который содержит четыре элемента: "to, from, subject, body".
!ELEMENT to определяет элемент to типа "#PCDATA".
!ELEMENT from определяет элемент from типа "#PCDATA".
!ELEMENT subject определяет элемент subject типа "#PCDATA".
!ELEMENT body определяет элемент body типа "#PCDATA"
Слайд 52

ПРИМЕР ВНЕШНЕГО ОПИСАНИЯ user1@domain.ru user2@domain.ru Встреча Позвони мне завтра утром

ПРИМЕР ВНЕШНЕГО ОПИСАНИЯ





user1@domain.ru
user2@domain.ru
Встреча

Позвони мне завтра утром


Слайд 53

ДЛЯ ЧЕГО НЕОБХОДИМО ИСПОЛЬЗОВАНИЕ DTD С помощью DTD XML файлы могут

ДЛЯ ЧЕГО НЕОБХОДИМО ИСПОЛЬЗОВАНИЕ DTD

С помощью DTD XML файлы могут содержать

описание собственного формата.
Независимые группы людей могут обмениваться данными.
DTD-схема может быть использована для проверки действительности, как документов получаемых извне, так и собственных документов
Слайд 54

ПРОСМОТР XML - ДОКУМЕНТОВ В отличии от HTML, XML никак не

ПРОСМОТР XML - ДОКУМЕНТОВ

В отличии от HTML, XML никак не определяет

способ отображения и использования описываемых с его помощью элементов документа, т.е. программе-анализатору предоставляется возможность самой выбирать нужное оформление.
Слайд 55

ОТОБРАЖЕНИЕ XML-ДОКУМЕНТОВ Таблица стилей. С помощью данного метода вы связываете таблицу

ОТОБРАЖЕНИЕ XML-ДОКУМЕНТОВ

Таблица стилей. С помощью данного метода вы связываете таблицу стилей

с XML-документом. Таблица стилей представляет собой отдельный файл, содержащий инструкции для форматирования индивидуальных XML-элементов.
Каскадная таблица стилей (Cascading Style Sheet – CSS);
Расширяемая таблица в формате языка стилевых таблиц (Extensible Stylesheet Language – XSL.
Слайд 56

ОТОБРАЖЕНИЕ XML-ДОКУМЕНТОВ С ИСПОЛЬЗОВАНИЕМ ТАБЛИЦ КАСКАДНЫХ СТИЛЕЙ Создание файла таблицы стилей

ОТОБРАЖЕНИЕ XML-ДОКУМЕНТОВ С ИСПОЛЬЗОВАНИЕМ ТАБЛИЦ КАСКАДНЫХ СТИЛЕЙ

Создание файла таблицы стилей
Связывание таблицы

стилей с XML-документом
Таблица стилей состоит из одного или нескольких правил (иногда их называют набором правил). Правило содержит информацию по отображению определенного типа элемента в XML-документе
Слайд 57

СЕЛЕКТОР Селектор представляет собой имя типа элемента, к которому относится информация по отображению

СЕЛЕКТОР

Селектор представляет собой имя типа элемента, к которому относится информация по

отображению
Слайд 58

ПРИМЕР ]>

ПРИМЕР




(TITLE,AUTHOR,BINDING,PAGES,PRICE)>





]>
Слайд 59

ПРИМЕР (ПРОДОЛЖЕНИЕ) Мастер и маргарита Михаил Булгаков Ленинградское издательство (Лениздат) 512

ПРИМЕР (ПРОДОЛЖЕНИЕ)


Мастер и маргарита
Михаил Булгаков
Ленинградское издательство (Лениздат)

512
74р.


Ревизор
Николай Гоголь
Искатель
80
37р.


Дети капитана Гранта
Жюль Верн
Азбука (Азбука-классика)
640
88р.


Слайд 60

ПРИМЕР (РЕЗУЛЬТАТ)

ПРИМЕР (РЕЗУЛЬТАТ)

Слайд 61

XSL-ТАБЛИЦА СТИЛЕЙ XSL-таблица стилей (eXtensible Stylesheet Language - расширяемый язык таблиц

XSL-ТАБЛИЦА СТИЛЕЙ

XSL-таблица стилей (eXtensible Stylesheet Language - расширяемый язык таблиц стилей)

связывается с XML-документом и сообщает браузеру, как отображать данные XML.
Слайд 62

ОТОБРАЖЕНИЕ НА СТРАНИЦЕ Создание файла XSL-таблицы стилей. XSL является приложением XML,

ОТОБРАЖЕНИЕ НА СТРАНИЦЕ

Создание файла XSL-таблицы стилей. XSL является приложением XML, т.е.

XSL-таблица представляет собой корректно сформированный XML-документ, который отвечает правилам XSL.
Связывание XSL-таблицы стилей с XML-документом. В XML-документ включается инструкция по обработке xml-stylesheet, которая имеет следующую форму записи:
Слайд 63

XSL-ТАБЛИЦА ВКЛЮЧАЕТ ОДИН ИЛИ НЕСКОЛЬКО ШАБЛОНОВ

XSL-ТАБЛИЦА ВКЛЮЧАЕТ ОДИН ИЛИ НЕСКОЛЬКО ШАБЛОНОВ




Слайд 64

ЭЛЕМЕНТ XSL:STYLESHEET Служит не только хранилищем всех других элементов, но также идентифицирует документ как XSL-таблицу стилей.

ЭЛЕМЕНТ XSL:STYLESHEET

Служит не только хранилищем всех других элементов, но также

идентифицирует документ как XSL-таблицу стилей.
Слайд 65

ШАБЛОНЫ ИМЕЮТ СЛЕДУЮЩУЮ ФОРМУ Атрибут match шаблона указывает на определённую ветвь

ШАБЛОНЫ ИМЕЮТ СЛЕДУЮЩУЮ ФОРМУ

   


Атрибут match

шаблона указывает на определённую ветвь и аналогичен селектору в правиле CSS.
Значение атрибута match называется образцом (pattern).
Слайд 66

ШАБЛОН МОЖЕТ СОДЕРЖАТЬ ДВА ВИДА XML-ЭЛЕМЕНТОВ XML-элементы, представляющие HTML-разметку, например: Каталог

ШАБЛОН МОЖЕТ СОДЕРЖАТЬ ДВА ВИДА XML-ЭЛЕМЕНТОВ

XML-элементы, представляющие HTML-разметку, например:

Каталог товаров

. Браузер

просто скопирует каждый HTML-элемент непосредственно на выход HTML. Каждый из элементов, представляющих HTML-разметку, должен быть корректно сформированным XML-элементом. Например, чтобы задать перевод строки в HTML, вы должны использовать тэг пустого элемента
.
Собственно XSL-элементы, например: Браузер отличает XML-элемент от HTML-элемента, поскольку первый имеет префикс xsl.
Слайд 67

XSL-ЭЛЕМЕНТ VALUE-OF добавляет текстовое содержимое определённого XML-элемента и всех его дочерних

XSL-ЭЛЕМЕНТ VALUE-OF

добавляет текстовое содержимое определённого XML-элемента и всех его дочерних

элементов в выходной модуль HTML.
Порядок следования элементов value-of в шаблоне определяет порядок вывода информации.
XSL-таблица стилей имеет преимущество перед CSS-таблицей стилей, которая выводит данные всегда только в том порядке, в котором они следуют в XML-документе.
Слайд 68

ЭЛЕМЕНТ FOR-EACH Заголовок Наименование:

ЭЛЕМЕНТ FOR-EACH

Заголовок

Наименование:

Слайд 69

АТРИБУТ SELECT ЭЛЕМЕНТА FOR-EACH задаёт текущий элемент, поэтому внутри элемента for-each

АТРИБУТ SELECT ЭЛЕМЕНТА FOR-EACH

задаёт текущий элемент, поэтому внутри элемента for-each все

образцы (пути к элементам в атрибутах select) задаются уже относительно этого текущего элемента
Слайд 70

ИСПОЛЬЗОВАНИЕ XSL-ЭЛЕМЕНТА APPLY-TEMPLATES Заголовок Наименование:

ИСПОЛЬЗОВАНИЕ XSL-ЭЛЕМЕНТА APPLY-TEMPLATES


Заголовок


Наименование:

Слайд 71

ПРИМЕР (SAMPLE.XSL) Каталог товаров

ПРИМЕР (SAMPLE.XSL)




Каталог товаров




Слайд 72

ПРИМЕР (ПРОДОЛЖЕНИЕ) Наименование: Импортный:

ПРИМЕР (ПРОДОЛЖЕНИЕ)


Наименование:


Импортный:









Слайд 73

ПРИМЕР (ПРОДОЛЖЕНИЕ)

ПРИМЕР (ПРОДОЛЖЕНИЕ)








Слайд 74

ПРИМЕР (SAMPLE.XLS) [ ] >

ПРИМЕР (SAMPLE.XLS)



[

PRODUCT (TITLE, SORT+)>





]
>
Слайд 75

ПРИМЕР (SAMPLE.XLS) Product #1 red $10.00 blue $11.00 gray $16.00 Product #2 red $20.00 green $22.00

ПРИМЕР (SAMPLE.XLS)



Product #1

red


$10.00


blue
$11.00


gray
$16.00



Product #2

red
$20.00


green
$22.00



Слайд 76

РЕЗУЛЬТАТ ВЫПОЛНЕНИЯ

РЕЗУЛЬТАТ ВЫПОЛНЕНИЯ

Слайд 77

ФИЛЬТРАЦИЯ И СОРТИРОВКА ДАННЫХ Можно ограничить количество элементов, отвечающих шаблону, введя

ФИЛЬТРАЦИЯ И СОРТИРОВКА ДАННЫХ

Можно ограничить количество элементов, отвечающих шаблону, введя фильтр

- выражение, заключённое в квадратные скобки и следующее непосредственно за оператором пути.
Слайд 78

обрабатывать надо только те элементы PRODUCT, у которых есть сорт серого


обрабатывать надо только те элементы PRODUCT, у которых есть

сорт серого цвета (элемент SORT имеет дочерний элемент COLOR, который содержит текст "gray"
Слайд 79

обрабатывать надо только импортные товары (т.е. только те элементы PRODUCT, у которых атрибут import равен "yes"


обрабатывать надо только импортные товары (т.е. только те элементы

PRODUCT, у которых атрибут import равен "yes"
Слайд 80

Если в фильтр включено только имя элемента (без знака равенства и

Если в фильтр включено только имя элемента (без знака равенства и

"контрольного" значения), проверяется только наличие этого дочернего элемента.
Если элемент имеет более одного дочернего элемента с именем, указанным в условии фильтрации, проверяется только первый дочерний элемент
Слайд 81

АТРИБУТ ORDER-BY Можно использовать атрибут order-by для сортировки данных XML при

АТРИБУТ ORDER-BY

Можно использовать атрибут order-by для сортировки данных XML при выводе.
Можно

назначить атрибуту order-by один или несколько образцов, разделяя их точкой с запятой.
Браузер будет сортировать элементы с использованием образцов в том порядке, в котором они перечислены.
Для указания направления сортировки (по возрастанию или убыванию) следует предварять образец префиксом + или -.
Слайд 82

сортировка товаров по возрастанию по признаку импорта, а для товаров с


сортировка товаров по возрастанию по признаку импорта,

а для товаров с одинаковым признаком импорта - сортировка (по убыванию) по наименованию
Слайд 83

ПРОСТОЙ ПРИМЕР Файл 1.xml "Заметки об XSL" Леонов Игорь Васильевич

ПРОСТОЙ ПРИМЕР

Файл 1.xml
"Заметки об XSL" Леонов Игорь Васильевич

Слайд 84

ОТОБРАЖЕНИЕ В БРАУЗЕРЕ

ОТОБРАЖЕНИЕ В БРАУЗЕРЕ

Слайд 85

ДОБАВЛЕНИЕ ССЫЛКИ НА XSL ФАЙЛ "Заметки об XSL" Леонов Игорь Васильевич

ДОБАВЛЕНИЕ ССЫЛКИ НА XSL ФАЙЛ

"Заметки об XSL" Леонов

Игорь Васильевич
Слайд 86

XSL-ФАЙЛ 1.XSL

XSL-ФАЙЛ 1.XSL




Слайд 87

РЕЗУЛЬТАТ

РЕЗУЛЬТАТ

Слайд 88

ИЗМЕНЕНИЕ ПОРЯДКА СТРОК

ИЗМЕНЕНИЕ ПОРЯДКА СТРОК




Слайд 89

ПРИМЕР 2

ПРИМЕР 2

color="рыжий с черными подпалинами"/>
Слайд 90

. , .

. , .


Слайд 91

Результат имеет следующий вид: Собака: Шарик. 18 кг, рыжий с черными подпалинами.

Результат имеет следующий вид:
Собака: Шарик. 18 кг, рыжий с черными подпалинами.

Слайд 92

. , .

. , .


Слайд 93

ПРОСТАЯ ТАБЛИЦА Кличка Вес Цвет

ПРОСТАЯ ТАБЛИЦА

Кличка Вес Цвет
select="dogName"/>

Слайд 94

РЕЗУЛЬТАТ

РЕЗУЛЬТАТ

Слайд 95

СОРТИРОВКА АТРИБУТ ORDER-BY

СОРТИРОВКА АТРИБУТ ORDER-BY


Слайд 96

СОРТИРОВКА ЧИСЛОВЫХ ЗНАЧЕНИЙ order-by="dogName" заменим на order-by="number(dogWeight)".

СОРТИРОВКА ЧИСЛОВЫХ ЗНАЧЕНИЙ

order-by="dogName" заменим на order-by="number(dogWeight)".

Слайд 97

СОРТИРОВКА ПО НЕСКОЛЬКИМ СТОЛБЦАМ order-by="number(dogWeight); dogName"

СОРТИРОВКА ПО НЕСКОЛЬКИМ СТОЛБЦАМ

order-by="number(dogWeight); dogName"

Слайд 98

СОРТИРОВКА ПО УБЫВАНИЮ значение атрибут order - значение ascending заменено на descending.

СОРТИРОВКА ПО УБЫВАНИЮ

значение атрибут order - значение ascending заменено на descending.

Слайд 99

ЭЛЕМЕНТ XSL:IF - ФИЛЬТР xsl:for-each select="tutorial/enimals/dogs/dog[dogWeight$gt$10] " order-by="number(dogWeight); dogName;">

ЭЛЕМЕНТ XSL:IF - ФИЛЬТР

xsl:for-each select="tutorial/enimals/dogs/dog[dogWeight$gt$10] " order-by="number(dogWeight); dogName;">

Слайд 100

ДРУГИЕ СПОСОБЫ СОРТИРОВКИ И ФИЛЬТРАЦИИ ДАННЫХ условие фильтра у нас вынесено

ДРУГИЕ СПОСОБЫ СОРТИРОВКИ И ФИЛЬТРАЦИИ ДАННЫХ


условие фильтра

у нас вынесено в отдельный элемент xsl:if.

конечный тег элемента xsl:if.
Слайд 101

ПРИМЕР

ПРИМЕР






Слайд 102

Функция start-with(string,startSubstring) проверяет, начинается ли строка string с подстроки startSubstring. Синтаксис

Функция start-with(string,startSubstring) проверяет, начинается ли строка string с подстроки  startSubstring.
Синтаксис элемента

xsl:if.

Значения переменных были инициализированы ранее
Т
Слайд 103

СИНТАКСИС ЭЛЕМЕНТА XSL:IF. Два элемента xsl:if, вложенные друг в друга, дают

СИНТАКСИС ЭЛЕМЕНТА XSL:IF.


Два элемента xsl:if, вложенные друг в друга, дают

нам эффект оператора AND
...
Можно добиться и эффекта оператора OR. Для этого нам нужно включить два цикла, в каждом из которых формируется своя выборка  
Слайд 104

ЭЛЕМЕНТ XSL:IF - УЛУЧШЕНИЕ ВНЕШНЕГО ВИДА ТАБЛИЦ Элемент xsl:if можно применять

ЭЛЕМЕНТ XSL:IF - УЛУЧШЕНИЕ ВНЕШНЕГО ВИДА ТАБЛИЦ

Элемент xsl:if можно применять

не только для фильтрации строк выборки.
Можно использовать эту функцию для того, чтобы чередовать цвет четных и нечетных строк таблицы 
#CCCCCC