Элемент xsl:template

Таблица стилей XSL содержит один или больше наборов правил преобразования, которые называются шаблонами преобразования. Шаблон преобразования содержит правила, которые применяются, когда найден узел, соответствующий условию поиска.

Элемент <xsl:template>

Для создания шаблонов преобразования используется элемент <xsl:template>.

При этом атрибут match используется для ассоциации шаблона с XML элементом. Также, атрибут match может использоваться, чтобы определить шаблон для всего XML документа целиком. Значение атрибута match это выражение XPath (например, match="/" определяет весь документ).

Пример


<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
   <html>
   <body>
   <h2>My CD Collection</h2>
   <table border="1">
     <tr bgcolor="#9acd32">
       <th>Title</th>
       <th>Artist</th>
     </tr>
     <tr>
       <td>.</td>
       <td>.</td>
     </tr>
   </table>
   </body>
   </html>
</xsl:template>

</xsl:stylesheet> 

Объяснение

Так как таблица стилей XSL это XML документ, он всегда должен начинаться с XML декларации: <?xml version="1.0" encoding="UTF-8"?>.

Следующий элемент, <xsl:stylesheet>, определяет, что данный документ это таблица стилей XSLT (с атрибутами номера версии и пространства имен XSLT).

Элемент <xsl:template> определяет шаблон. Атрибут match="/" ассоциирует шаблон с корневым элементом исходного XML документа.

Содержимое элемента <xsl:template> определяет некий HTML код, который записывается в выходной документ.

Последние две строки определяют конец шаблона и конец таблицы стилей.

Однако на данном этапе результат этого примера окажется несколько разочаровывающим, так как в конечный XML документ никакие данные не будут передан. В следующей главе вы узнаете, как использовать элемент <xsl:value-of> для выборки значений из XML элементов.