如何在XSL中改进变量覆盖/覆盖?

Chr*_*min 3 xml xslt

我想做以下事情:

  1. 声明一个变量
  2. 进入if语句
  3. 覆盖变量

XSL说我不能两次声明变量,那么我该怎么做才能改进这一步呢?

另一种方法是检查是否设置了变量.我这样做了,因为我跳过了第一步并在if语句中声明了变量.在另一个if语句中,我想检查变量是否存在.

Inf*_*nd' 5

如果您已经提到了您认为需要"覆盖变量"的示例代码,那么任何像Tomalak,Dimitre这样的专家都会建议您提供更好的(替代)选项/建议.

好.如果只是你的问题(就像人们如何处理变量无法改变的语言那样!!! ??)那么我打赌你会在练习时得到澄清.

当我作为初学者使用XSLT开始我的运营商时,即使我有同样的问题......但很快我意识到...... 我们不需要变量来改变.;);)

我觉得很高兴与XSLT合作.
您可以按照处理函数和过程的方式处理模板.(不精确)
你可以递归地 调用它们.
你可以想象的数据操作的程度,可以用一种或另一种方式实现..(可能不是更容易,但并非不可能至少)..


回到你的问题,如果你真的需要改变变量的值..那么随意定义一个新的变量..!?使用数学运算符,内置函数等对前一个变量的值,而不是分配回同一个变量..将其分配给一个新的..并根据需要使用它.


这可能不是有效的技术,但可以是步骤1.

另一方面..你可以将表达式.. [ like translate(., abc, ABC)]作为参数(Param)发送到其他模板..或者可以直接写为输出.. !! 以免变量变化.:))