1つの条件環境に応じて複数の変数を割り当てたい。私は1つの変数に対してのみそれを行う方法を知っています:
<xsl:variable name="foo">
<xsl:choose>
<xsl:when test="$someCondition">
<xsl:value-of select="3"/>
<xsl:when>
<xsl:otherwise>
<xsl:value-of select="4711"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
しかし、同じ条件$ someConditionに応じて2つの変数を割り当てたい場合はどうなりますか?
同じxsl:chooseステートメントを再度記述したくありません。これは、実際の例では多少時間がかかり、計算量が多いためです。
問題の環境は、exslt拡張機能を備えたlibxslt(xslt 1.0)です。
編集:私が欲しいのは、に似た動作です
if (condition) {
foo = 1;
bar = "Fred";
}
else if (...) {
foo = 12;
bar = "ASDD";
}
(... more else ifs...)
else {
foo = ...;
bar = "...";
}