XML - статьи


Простая таблица


Первый шаг - это, как всегда, добавление шаблона преобразования. Модифицируем наш файл, добавив в него ссылку на шаблон. В результате получим файл .

В этот файл добавлен шаблон преобразования .

Рассмотрим этот шаблон подробнее. Вот его текст.

<?xml version="1.0" encoding="WINDOWS-1251" ?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl">

<xsl:template match="/">

<table border="1">

<tr bgcolor="#CCCCCC">

<td align="center"><strong>Кличка</strong></td>

<td align="center"><strong>Вес</strong></td>

<td align="center"><strong>Цвет</strong></td>

</tr>

<xsl:for-each select="tutorial/enimals/dogs/dog">



<tr bgcolor="#F5F5F5">

<td><xsl:value-of select="dogName"/></td>

<td align="right"><xsl:value-of select="dogWeight"/> <xsl:value-of select="dogWeight/@caption"/></td>

<td><xsl:value-of select="dogColor"/></td>

</tr>

</xsl:for-each>

</table>

</xsl:template>

</xsl:stylesheet>

Первая строка - новая для вас в XSL-файле (но не в XML-файлах!). Она говорит о том, что в XSL-файле нужно нормально воспринимать русские буквы. Без этой строки браузер не сможет корректно обработать русский текст в XSL-файле. Следующие две строки шаблона являются уже привычными. Следующие шесть строк - это строка, содержащая заголовки столбцов таблицы. Конструкция для извлечения текста заголовков таблицы вам уже знакома. А вот десятая строка тоже является новой:

<xsl:for-each select="tutorial/enimals/dogs/dog">

Этот элемент шаблона позволяет выбрать и просмотреть все группы информации, полный путь к которым задается списком тегов "tutorial/enimals/dogs/dog". Обратите внимание - путь задается полностью, ни один из тегов опустить нельзя. Далее в ячейки таблицы помещается информация о наших собаках. В отличие от первых примеров путь к соответствующей информации тоже задается полностью. Попробуем, например, разместить информацию о кличке чуть-чуть иначе :


<dogName>

<dogNick>Шарик</dogNick>

</dogName>

Если мы в соответствующем XSL-файле поставим ссылку <xsl:value-of select="dogNick"/>, то в соответствующем столбце никакой клички мы не увидим. Ссылка должна быть полной - <xsl:value-of select="dogName/dogNick"/>. Вы можете самостоятельно поэкспериментировать с файлом . Правильный результат приведен ниже.

Кличка Вес Цвет
Шарик 18 кг рыжий с черными подпалинами
Тузик 10 кг белый с черными пятнами
Бобик 2 кг бело-серый
Трезор 25 кг черный

Содержание раздела