Валиков Алексей Н.
Шрифт:
Вызов именованного шаблона выполняется элементом
Параметры именованному шаблону передаются точно так же, как и обычному — при помощи элементов
которая вызывает шаблон с именем
Вызов именованного шаблона может также производиться при инициализации переменной — внутри элемента xsl:variable. В этом случае с переменной связывается результирующий фрагмент дерева, возвращаемый именованным шаблоном.
В качестве примера приведем простой шаблон, который вычисляет квадрат переданного ему параметра
Для того чтобы присвоить переменной
Обратим внимание, что значение переменной
выведет строку "
Для того чтобы присвоить переменной результат выполнения именованного шаблона в виде булевого значения, строки или числа, следует воспользоваться промежуточной переменной для явного преобразования типов.
После выполнения действий
переменные
Немного сложнее обстоит дело с булевым типом. При приведении дерева к булевому типу результатом всегда будет "истина", поэтому такое преобразование необходимо выполнить в два шага: сначала преобразовать дерево в число, только затем число в булевый тип.
В следующем преобразовании шаблон с именем