Emacs для начинающих



         

Переменные


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

(Странно, почему перменные названы переменными, а не константами. Прим.ред.)

Определяются переменные просто:

<!-- variables.xsl -->

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">

<!-- definition of the variable --> <xsl:variable name="path">http://somedomain/tmp/xslt</xsl:variable>

<html> <head> <title>Пример с переменными</title> </head>

<body> <p> <a href="{$path}/photo.jpg">Фотография моего последнего путешествия</a> </p> </body> </html> </xsl:template>

</xsl:stylesheet>

Результирующий HTML-документ:

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

<title>Пример с переменными</title> </head> <body> <p><a href="http://somedomain/xslt/photo.jpg">Фотография моего последнего путешествия</a></p> </body> </html>

Переменной можно присвоить значение узла или значение атрибута узла:

<!-- variables_select.xsl -->

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/"> <html> <head> <title>Пример с переменными</title> </head> <body> <xsl:apply-templates select="//photo"/> </body> </html> </xsl:template>

<xsl:template match="photo"> <!-- определение переменных --> <xsl:variable name="path">http://somedomain/tmp/xslt</xsl:variable> <xsl:variable name="photo" select="file"/> <p> <a href="{$path}/{$photo}"><xsl:value-of select="description"/></a> </p> </xsl:template>




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