XSLT — страница 44 из 124

/xsl:message>

, 

and 

.

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

при помощи
:

</code></pre></p><p><pre><code>  The Planets</code></pre></p><p><pre><code>

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

Вот еще один пример преобразования XML-XML. В этом случае я преобразую

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

</code></pre></p><p><pre><code>  The Planets</code></pre></p><p><pre><code>

Mercury

Hottest

Venus

Hot

Earth

OK

Это преобразование можно реализовать, выбирая значение каждого элемента

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

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

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

</code></pre></p><p><pre><code>    The Planets</code></pre></p><p><pre><code>


    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

1

1

2107

1

128.4

Отобразить названия различных планет при помощи элемента

, отформатированные по-разному при помощи тегов HTML
<В>
,
и
в зависимости от значения атрибута
COLOR
, можно следующим образом (листинг 5.6).

Листинг 5.6. Форматирование при помощи

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

</code></pre></p><p><pre><code>     Planets</code></pre></p><p><pre><code>


<В>

<