XML - статьи



              

Первые шаги - часть 3


В первом примере мы посмотрели, как с помощью элемента xsl:value-of можно вывести в HTML-формате содержание элемента (текст, заключенный между тегами). Теперь мы посмотрим, как при помощи того же самого элемента можно вывести значение атрибута элемента.

Рассмотрим следующий XML-файл

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

<?xml-stylesheet type='text/xsl' href='ex02-1.xsl'?>

<tutorial>

<dog caption="Собака: " name="Шарик">

<dogInfo weight="18 кг" color="рыжий с черными подпалинами"/>

</dog>

</tutorial>

В этом файле информация хранится не в содержании элементов, а в виде значений атрибутов. Файл имеет вид

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

<xsl:template match="/">

<P><B><xsl:value-of select="//dog/@caption"/></B>

<xsl:value-of select="//dog/@name"/>.

<xsl:value-of select="//dogInfo/@weight"/>, <xsl:value-of select="//dogInfo/@color"/>.</P>

</xsl:template>

</xsl:stylesheet>

Обратите внимание на синтаксис ссылки на атрибут элемента - //dog/@name. Имя элемента и имя атрибута разделены парой символов "/@". В остальном синтаксис тот же самый, что и для ссылки на содержание элемента.

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

Собака: Шарик. 18 кг, рыжий с черными подпалинами.

Обратим теперь внимание на следующий момент. В XSL-файле мы никак не использовали элемент tutorial. На самом деле можно было использовать полный путь. Перепишем наш XML-файл, увеличив глубину дерева ()

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

<?xml-stylesheet type='text/xsl' href='ex02-2.xsl'?>

<tutorial>

<enimals>

<dog caption="Собака: " name="Шарик">

<dogInfo weight="18 кг" color="рыжий с черными подпалинами"/>




Содержание  Назад  Вперед