Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

02-lect_xml

.pdf
Скачиваний:
8
Добавлен:
05.06.2015
Размер:
284.22 Кб
Скачать

XSL

XSL (eXtensible Stylesheet Language) — семейство рекомендаций

консорциума W3C, описывающее языки преобразования и визуализации XML-документов.

Состоит из трех частей:

XSL Transformations (XSLT) — язык преобразований XML-документов.

XSL Formatting Objects (XSL-FO) — язык разметки типографских макетов и иных предпечатных материалов.

XPath — язык путей и выражений, используемый в XSLT для доступа к отдельным частям XML-документа.

http://ru.wikipedia.org/wiki/XSL

XSL

Основные отличия от CSS

CSS и XSL — принципиально разные технологии. Их области применения пересекаются лишь частично.

CSS-форматирование HTML-документа применяется браузером на клиентской стороне, а XSL-преобразование выполняется, как правило, на сервере, затем его результат отправляется в браузер клиента.

Языком, лежащим в основе XSL, является XML, а это означает, что XSL более гибок, универсален, и у разработчиков появляется возможность использования средств контроля за корректностью составления таких стилевых списков (используя DTD или схемы данных).

http://ru.wikipedia.org/wiki/XSL

XSLT

XSLT (eXtensible Stylesheet Language Transformations)

язык преобразования XML-документов. Спецификация XSLT входит в состав XSL и является рекомендацией W3C.

При применении таблицы стилей XSLT, состоящей из набора шаблонов, к XML-документу (исходное дерево) образуется конечное дерево, которое может быть сериализовано в виде XML-документа, XHTML-документа (только для XSLT 2.0), HTML-документа или простого текстового файла. Правила выбора (и, отчасти, преобразования) данных из исходного дерева пишутся на языке запросов XPath.

XSLT имеет множество различных применений, в основном в области web-программирования и генерации отчётов. Одной из задач, решаемых языком XSLT, является отделение данных от их представления, как часть общей парадигмы MVC (англ. Model-view-controller). Другой стандартной задачей является преобразование XML-документов из одной XML-схемы в другую.

http://ru.wikipedia.org/wiki/XSLT

XSLT

Процесс выполнения XSLT-преобразования

В процессе выполнения XSLT-преобразования задействованы:

один или несколько входных XML-документов;

одна или несколько таблиц cтилей XSLT;

XSLT-процессор;

один или несколько выходных документов.

В простейшем случае XSLT-процессор получает на входе два документа — входной XML-документ и таблицу стилей XSLT

— и создает на их основе выходной документ.

http://ru.wikipedia.org/wiki/XSLT

XSL-FO

XSL-FO (англ. eXtensible Markup Language Formatting Objects

— объекты форматирования языка таблиц стилей для XML)

рекомендованный Консорциумом Всемирной паутины язык разметки типографских макетов и иных предпечатных материалов. XSL-FO является частью XSL, наряду с XSLT и XPath.

В отличие от комбинации HTML и CSS, XSL-FO — это унифицированный язык представления. Он не имеет семантической разметки в том смысле в каком она используется в HTML. И, в отличие от CSS, который модифицирует представление по умолчанию для внешнего HTML или XML-документа, он сохраняет все данные документа внутри себя.

Документ XSL-FO — это XML файл, в котором хранятся данные для печати или вывода на экран (например, просто текст). Эти данные находятся внтури тегов fo:block, fo:table, fo:simple-page-master и д.р., где указаны отступы, переводы строк и т.д.

Общая идея использования XSL-FO состоит в том, что пользователь создаёт документ, не в FO, но в виде XML. Это может быть, например, XHTML или DocBook, хотя возможно использование буквально любого XML-языка. Затем, пользователь применяет XSLTпреобразование, либо написав его самостоятельно, либо взяв готовое, подходящее к этому типу документа. Этот XSLT преобразует XML в XSL-FO.

После того как документ на XSL-FO получен, он передаётся приложению, которое носит название FO-процессор. Эта программа конвертирует XSL-FO-документ в какой-либо

читаемый и/или печатаемый формат. Наиболее часто используется преобразование в PDF либо PS.

http://ru.wikipedia.org/wiki/XSL-FO

Разработан для организации доступа к частям документа XML в

XPath

XPath (XML Path Language) — язык запросов к элементам XML-документа.

файлах трансформации XSLT и является стандартом консорциума W3C. XPath призван реализовать навигацию по DOM в XML. В XPath используется компактный синтаксис, отличный от принятого в XML. В 2007 году завершилась разработка версии 2.0, которая теперь является составной частью языка XQuery 1.0. В декабре 2009 года началась разработка версии 2.1, которая использует XQuery 1.1.

На данный момент, самой популярной версией является XPath 1.0. Это связано с отсутствием поддержки XPath 2.0 со стороны открытых библиотек.

http://ru.wikipedia.org/wiki/XPath

XPath

Это очень похоже на организацию папок в файловой системе, и строки XPath, фактически, - пути к "файлам" – элементам. Например:

<html>

<body> <div>Первый слой

<span>блок текста в первом слое</span> </div>

<div>Второй слой</div> <div>Третий слой

<span class="text">первый блок в третьем слое</span> <span class="text">второй блок в третьем слое</span> <span>третий блок в третьем слое</span>

</div> <img /> </body> </html>

Путь делится на шаги адресации, которые разделяются символом "косая черта" / .

XPath-путь /html/body/*/span[@class] (полный синтаксис имеет вид

/child::html/child::body/child::*/child::span[attribute::class])

будет соответствовать в нём двум элементам исходного документа -

<span class="text">первый блок в третьем слое</span> и <span class="text">второй

блок в третьем слое</span>.

http://ru.wikipedia.org/wiki/XPath

ПРИМЕР ДЛЯ ПРАКТИКИ (XML+CSS)

Заголовок1

 

 

2

1. Элемент списка 1

2. Элемент списка 2

3. Элемент списка 3

 

4. Элемент списка 4

 

 

 

3 4

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]