テンプレートマッチで変数をチェックしたいのですが、可能ですか?
お気に入り:
<xsl:template match="*:Item and $MODE='PURCHASE'">
したがって、テンプレートは変数$MODE='PURCHASE'
もチェックする必要があります
テンプレートマッチで変数をチェックしたいのですが、可能ですか?
お気に入り:
<xsl:template match="*:Item and $MODE='PURCHASE'">
したがって、テンプレートは変数$MODE='PURCHASE'
もチェックする必要があります
XSLT 1.0 にはありません。
XSLT 2.0 では、テンプレート マッチ パターンの述語に変数参照を含めることができます。
例:
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:param name="MODE" select="'PURCHASE'"/>
<xsl:template match="*:Item[$MODE='PURCHASE']">
<xsl:value-of select="."/>
</xsl:template>
</xsl:stylesheet>
この変換がこの XML ドキュメントに適用されると、次のようになります。
<t xmlns:x="some:x">
<x:Item>someText</x:Item>
</t>
必要な正しい結果が生成されます。
someText