Der Unterschied ist, dass der Wert eines xsl:param
außerhalb des Kontexts gesetzt werden kann, in dem es deklariert ist. Zum Beispiel siehe:
<xsl:template ...>
<xsl:param name="p" select="'x'" />
<xsl:variable name="v" select="'y'" />
...
dann wissen Sie, dass $v
Sie immer 'y'
die Zeichenfolge geben. Aber für $p
die Zeichenfolge 'x'
ist nur ein Standard: Sie einen anderen Wert sehen, ob die Vorlage mit aufgerufen wird entweder xsl:apply-templates
oder xsl:call-template
, die eine Anweisung enthält wie:
<xsl:with-param name="p" select="'not x'" />
<xsl:param>
kann auch im Freien verwendet werden xsl:template
, auf der obersten Ebene in das Stylesheet. Der Wert eines solchen Parameters kann eingestellt werden, wenn der XSLT-Prozessor aufgerufen wird. Wie das gemacht wird, hängt vom Prozessor ab und davon, ob Sie es von der Kommandozeile oder vom Programm aufrufen.