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

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

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

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

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

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

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

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

Интервал:

Закладка:

Сделать

УСОВЕРШЕНСТВОВАНИЯ В XSLT 2.0

Один из вопросов, которые призван решить XSLT 2.0, это упрощение импорта подобного текста без разбора из других файлов.

Отключение вывода эскейп-последовательностей

При помощи можно включать в выходной документ непосредственно символы < и &, а не последовательности <и &. Для этого следует установить атрибут disable-output-escapingэлемента в yes («да», по умолчанию он установлен в no, «нет»). В приведенном ниже примере я при помощи непосредственно пишу текст " " в выходной документ:

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

Planets

Результат следующий:

Planets

Разумеется, не обязательно выводить при помощи : этот элемент можно было поместить непосредственно в элемент буквального результата. Но что делать в тех случаях, когда процессор XSLT не сможет распознать нужный нам в выходном документе элемент как фактический элемент? Например, в преобразованных документах XHTML вам потребуется , но процессор XSLT сочтет, что это не хорошо сформированный XML. Как поместить этот элемент в выходные данные?

Можно попробовать поместить этот элемент в раздел , как мы увидим в главе 6, и попытаться трактовать его как простые символьные данные, но процессоры XSLT все равно заменят < на <, а > на >.

Правильный способ добавить в вывод элемент — использовать атрибут doctype-publicэлемента , как мы увидим в главе 6, но в качестве демонстрации для этих целей здесь я отключу вывод ESC-последовательностей в элементе (хотя этот способ не рекомендован для создания элементов ). Вот как это выглядит:

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

The Planets Table



The Planets Table

Name Mass Radius Day

А вот результат:

The Planets Table



The Planets Table

.

.

.

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

Написание значений атрибутов

В XSLT есть несколько способов написать значения атрибутов в выходные документы, и наиболее мощный — это создать атрибуты с нуля при помощи элемента , как мы увидим в главе 6.

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

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

MASS=".0553 (Earth = 1)" NAME="Mercury"/>

MASS=".815 (Earth = 1)" NAME="Venus"/>

MASS="1 (Earth = 1)" NAME="Earth"/>

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

"

MASS=""

DAY=""

/>

Это не будет работать, поскольку нельзя использовать < внутри значений атрибутов, как я сделал в предыдущем примере. В XSLT для этого есть несколько способов. Один из них — использовать шаблоны значений атрибутов.

Шаблоны значений атрибутов

Шаблон имени значения атрибута не имеет ничего общего с теми шаблонами, с которыми мы до сих пор работали, — то есть с шаблонами для создания правил таблицы стилей. Напротив, применение шаблона значения атрибута (attribute value template) означает лишь, что значение атрибута может быть установлено во время выполнения.

В этом случае атрибут можно установить в значение выражения XPath (более подробно эта тема изучается в главе 4), если заключить выражение в фигурные скобки. Например, чтобы установить атрибут NAMEв строковое значение элемента , дочернего элемента контекстного узла, это значение можно присвоить следующим образом: NAME={DESCRIPTION}.

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

Листинг 3.5. Работа с шаблонами значений атрибутов

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

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

Предположим теперь, что нам также нужно включить все единицы измерения. Каждый элемент , и содержит атрибут UNITS, задающий единицы измерения, и можно извлечь эти значения. Контекстным узлом является элемент , поскольку шаблон установлен для выбора этого элемента, поэтому на дочерние элементы , и можно ссылаться как " MASS", " NAME" и " RADIUS". Для обращения к атрибуту UNITSэтих элементов можно использовать синтаксис " MASS/@UNITS", " NAME/@UNITS", и " RADIUS/@UNITS":

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

Интервал:

Закладка:

Сделать

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

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


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

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

x