Стивен Холзнер - XSLT

Здесь есть возможность читать онлайн «Стивен Холзнер - XSLT» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Санкт-Петербург, Год выпуска: 2002, ISBN: 2002, Издательство: Питер, Жанр: Программирование, Интернет, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

XSLT: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «XSLT»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Эта книга посвящена XSLT — мощным и удобным системам преобразования документов. В ней не только рассматривается весь синтаксис XSLT, от основ до специальных аспектов, но и подробно излагаются современные способы использования XSLT.
Вы найдете сотни практических примеров, таких как осуществление преобразований XSLT на web-cepвepax, подключение к базам данных и использование браузеров для осуществления преобразований на лету.
Книга рассчитана на всех, кто хочет изучать XSLT и использовать его на практике

XSLT — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «XSLT», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

The Planets

The first three planets are:

Each planet must have a name!

.

and

.

Чтобы проверить работу этого кода, я задал один из элементов пустым:

Mercury

.0553

58.65

1516

.983

43.4

.815

116.75

3716

.943

66.8

.

.

.

Вот как происходит обработка примера в Xalan:

C:\planets>java org.apache.xalan.xslt.Process -IN planets.xml -XSL errors.xsl -OUT new.xml

file:///C:/XSL/w.xsl: Line 18: Column 38: Each planet must have a name!

XSLT Error (javax.xml.transform.TransformerException): Stylesheet directed termination

Если вы знакомы с конструкцией ifв языках программирования, вы знаете, что инструкция ifобычно сопровождается инструкцией else, которая выполняется при ложности условия в if. Но в XSLT нет элемента . Для задания альтернативных ветвей выполнения XSLT служит элемент .

Элементы , и

Элемент похож на оператор Java switch, который позволяет сравнивать значение условия с несколькими возможными вариантами.

У элемента нет атрибутов. Он содержит один или более элементов и (не обязательно) один элемент , который в случае применения должен стоять последним.

Вот как это работает: в элемент заключаются элементы , каждый с условием true/false. Применяется тело шаблона в первом элементе , чье условие имеет значение true, все остальные не применяются. Последним элементом внутри элемента может быть элемент тело шаблона внутри этого элемента применяется, если ни одно из предыдущих условий не имело значения true:

В предыдущем разделе для осуществления этого преобразования нам потребовалось три элемента :

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

The Planets

The first three planets are:

Each planet must have a name!

,

.

Теперь то же самое можно сделать при помощи единственного элемента :

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

The Planets

The first three planets are:

Each planet must have a name!

.

.

.

Нам нужно проверить, в каком месте документа мы находимся, при помощи включения нескольких элементов . У этого элемента только один атрибут:

test(обязательный). Принимает логическое ( Boolean) значение ( true/false) проверяемого условия.

Элемент содержит тело шаблона.

Атрибут проверки принимает значение true/false выражения, определяющего, будет ли применяться заключенное в элементе тело шаблона или нет. Например, вот как я добавил элементы с соответствующими знаками пунктуации для всех планет, кроме последней:

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

The Planets

The first three planets are:

Each planet must have a name!

,

and

.

.

.

Эти два элемента выбирают все элементы за исключением последнего, поэтому элемент можно применить для последнего элемента . Тело шаблона в этом элементе будет применено, если ни в одном элементе в элементе условие не примет значение true.

У элемента нет атрибутов, и он содержит тело шаблона. Вот как это выглядит в листинге 5.4.

Листинг 5.4. Применение

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

The Planets

The first three planets are:

Each planet must have a name!

,

and

.

Вот как это работает; этот код дает тот же результат, что и код, проверяющий позицию элементов при помощи :

The Planets

The first three planets are: Mercury, Venus, and Earth.

Вот еще один пример преобразования XML-XML. В этом случае я преобразую planets.xmlв новый XML-документ, сохраняя только название каждой планеты и добавляя описание:

The Planets

Mercury

Hottest

Venus

Hot

Earth

OK

Это преобразование можно реализовать, выбирая значение каждого элемента , то есть заключенный в нем текст (заметьте, что такого рода строки в XSLT учитывают регистр) (листинг 5.5).

Листинг 5.5. Второй пример

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

The Planets

Each planet must have a name!

Hottest

Hot

OK

Вот и все.

Предположим теперь, что нам нужно добавить в каждый элемент атрибут COLOR:

Mercury

.0553

58.65

1516

.983

43.4

Venus

.815

116.75

3716

.943

66.8

Earth

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «XSLT»

Представляем Вашему вниманию похожие книги на «XSLT» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «XSLT»

Обсуждение, отзывы о книге «XSLT» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x