キーと値のペアの束をパラメーターとして XSL に渡しています (日付 -> "1 月 20 日"、作成者 -> "ドミニク ロジャー"、...)。
これらは、私が解析している XML で参照されています。XML は次のようになります。
<element datasource="date" />
現時点では、恐ろしい<xsl:choose>
声明を除いて、これらから1月20日を取得する方法を理解できません。
<xsl:template match="element">
<xsl:choose>
<xsl:when test="@datasource = 'author'">
<xsl:value-of select="$author" />
</xsl:when>
<xsl:when test="@datasource = 'date'">
<xsl:value-of select="$date" />
</xsl:when>
...
</xsl:choose>
</xsl:template>
次のようなものを使用したいと思います:
<xsl:template match="element">
<xsl:value-of select="${@datasource}" />
</xsl:template>
しかし、これは不可能だと思います。外部関数呼び出しの使用を開始していますが、XSL で可能なすべてのマップ キーを列挙する必要は避けたいと考えています。何か案は?
ありがとう、
ドム