Элемент xsl:with-param
Синтаксис этого элемента выглядит следующим образом:
name="имя"
select="выражение">
Как можно заметить, элемент xsl:with-param
абсолютно идентичен элементу xsl:param
(отличаются только их имена). Практически настолько же похоже и их действие: элемент xsl:with-param
тоже связывает с именем параметра значение, и при выполнении шаблона это значение будет использоваться вместо значения параметра по умолчанию.
Таким образом, значение параметра, заданного в шаблоне, выбирается в соответствии со следующими положениями:
если в элементе, который вызывает этот шаблон, присутствует элемент xsl:with-param
, передающий значение этого параметра, в шаблоне будет использоваться переданное значение;
если в элементе, который вызывает этот шаблон, элемента xsl:with-param
, с соответствующим именем нет, в качестве значения параметра будет использоваться значение по умолчанию.
Элемент xsl:with-param
может использоваться только в качестве дочернего элемента xsl:apply-templates
и xsl:call-template
.
В качестве простого примера приведем шаблон, который выводит сокращение названия для недели по его номеру. Номер дня передается в шаблон параметром с именем day-number
.