Chapter 7. Using Variables and Parameters
XSLT
offers several
ways to bind a name to a value so that the value can be later
referenced by name any number of times in a stylesheet. The
variable
element binds a name to an immutable
value once it’s been evaluated, while the
param element binds a name to a default value, but
it’s a value you can change. You can define a
default value with param and then pass a new value
into the stylesheet or to a template. The
with-param element allows you to apply or call a
template from another template with a new value for one or more
parameters, like a method or function call with arguments.
Tip
Variables in XSLT are limited in what they can do. They are not like variables in programming languages that you can reassign over and over again. Generally, you will define a variable once and then reference it as often as you want. You will also generally change the default value of a parameter just when you pass a value to a stylesheet or template. There are ways around this, but, by and large, that is how you use them. In this way, XSLT variables are more similar to constants in a programming language than to variables.
You can use the variable and
param elements globally on the top-level as
stylesheet-wide values, or locally within templates. If a variable is
global, its scope is the entire stylesheet; if it is local, its scope
is restricted to the template where it is defined or passed in. The
with-param element may appear only as an immediate ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access