Чтение онлайн

на главную

Жанры

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

Шрифт:

<HTML>

 <HEAD>

<meta http-equiv="Content-Type" content="text/html" charset="utf-8">

<TITLE>

The Planets Table

</TITLE>

 </HEAD>

 <BODY>

<H1>

The Planets Table

</H1>

<TABLE BORDER="2">

<TD>Name</TD>

<TD>Mass</TD>

<TD>Radius</TD>

<TD>Day</TD>

<TR>

<TD>Mercury</TD>

<TD>.0553</TD>

<TD>1516</TD>

<TD>58.65</TD>

</TR>

<TR>

<TD>Venus</TD>

<TD>.815</TD>

<TD>3716</TD>

<TD>116.75</TD>

</TR>

<TR>

<TD>Earth</TD>

<TD>1</TD>

<TD>2107</TD>

<TD>1</TD>

</TR>

</TABLE>

 </BODY>

</HTML>

Как

видите, в XSLT обработке символов-разделителей приходится уделять достаточное внимание, но процедура упрощается, если вы знаете, что происходит.

ВЫРАВНИВАНИЕ ДОКУМЕНТОВ В ЭТОЙ КНИГЕ

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

Правила по умолчанию в шаблоне

Взгляните на следующую таблицу стилей XSLT — в ней заданы правила для выбора корневого узла, узлов

<PLANETS>
и узлов
<PLANET>
:

<?xml version="1.0"?>

<xsl:stylesheet version="1.0"

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

 <xsl:template match="/">

<HTML>

<xsl:apply-templates/>

</HTML>

 </xsl:template>

 <xsl:template match="PLANETS">

<xsl:apply-templates/>

 </xsl:template>

 <xsl:template match="PLANET">

<xsl:value-of select="NAME"/>

 </xsl:template>

</xsl:stylesheet>

Обратите

внимание на правило для элемента
<PLANETS>
: в нем просто используется элемент
<xsl:apply-templates>
для применения шаблонов ко всем дочерним узлам. Однако при обработке шаблона существует правило по умолчанию: если для элемента не задано правило, автоматически вызывается
<apply-templates/>
. Таким образом, следующая таблица стилей, в которой опущено правило для
<PLANETS>
, делает в точности то же, что и предыдущая:

<?xml version="1.0"?>

<xsl:stylesheet version="1.0"

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

 <xsl:template match="/">

<HTML>

<xsl:apply-templates/>

</HTML>

 </xsl:template>

 <xsl:template match="PLANET">

<xsl:value-of select="NAME"/>

 </xsl:template>

</xsl:stylesheet>

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

• Корневой узел. По умолчанию вызывается

<xsl:apply-templates/>
;

• Узлы элементов. По умолчанию вызывается

<xsl:apply-templates/>
;

• Узлы атрибутов. Копирует в результирующий документ значение атрибута, однако копирует его как текст, но не как атрибут;

• Текстовые узлы. Копирует в результирующий документ текст;

• Узлы комментариев. Нет обработки XSLT, ничего не копируется;

• Узлы инструкций обработки. Нет обработки XSLT, ничего не копируется;

• Узлы пространств имен. Нет обработки XSLT, ничего не копируется.

Поделиться:
Популярные книги

Идеальный мир для Лекаря 6

Сапфир Олег
6. Лекарь
Фантастика:
фэнтези
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 6

Санек 2

Седой Василий
2. Санек
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Санек 2

Первый среди равных

Бор Жорж
1. Первый среди Равных
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Первый среди равных

Соль этого лета

Рам Янка
1. Самбисты
Любовные романы:
современные любовные романы
6.00
рейтинг книги
Соль этого лета

Не отпускаю

Шагаева Наталья
Любовные романы:
современные любовные романы
эро литература
8.44
рейтинг книги
Не отпускаю

Вечный. Книга VI

Рокотов Алексей
6. Вечный
Фантастика:
рпг
фэнтези
5.00
рейтинг книги
Вечный. Книга VI

Идеальный мир для Социопата 7

Сапфир Олег
7. Социопат
Фантастика:
боевая фантастика
6.22
рейтинг книги
Идеальный мир для Социопата 7

Вираж бытия

Ланцов Михаил Алексеевич
1. Фрунзе
Фантастика:
героическая фантастика
попаданцы
альтернативная история
6.86
рейтинг книги
Вираж бытия

Жена проклятого некроманта

Рахманова Диана
Фантастика:
фэнтези
6.60
рейтинг книги
Жена проклятого некроманта

Солдат Империи

Земляной Андрей Борисович
1. Страж
Фантастика:
попаданцы
альтернативная история
6.67
рейтинг книги
Солдат Империи

Афганский рубеж 2

Дорин Михаил
2. Рубеж
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Афганский рубеж 2

Ваше Сиятельство 3

Моури Эрли
3. Ваше Сиятельство
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Ваше Сиятельство 3

Вернуть невесту. Ловушка для попаданки 2

Ардова Алиса
2. Вернуть невесту
Любовные романы:
любовно-фантастические романы
7.88
рейтинг книги
Вернуть невесту. Ловушка для попаданки 2

Дикая фиалка Юга

Шах Ольга
Фантастика:
фэнтези
5.00
рейтинг книги
Дикая фиалка Юга