saxon:assignable

This attribute may be set on a global xsl:variable or xsl:param element. The permitted values are yes and no. If the variable is the subject of a saxon:assign instruction, it must be set to the value yes. Setting this value to yes also ensures that the variable is actually evaluated, which is useful if the select expression calls extension functions with side-effects; without this, a variable that is never referenced may never be evaluated.