我花了2个小时在互联网上寻找帮助,但我没有找到任何答案......
我希望你能:)
所以,我的 xslt 文件如下(简化):
<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" />
<xsl:param name="basename"/>
<xsl:param name="purpose"/>
<xsl:param name="xml_input_path"/>
<xsl:param name="self"/>
<xsl:template match="testspec">
<xsl:call-template name="call_commands"/>
</xsl:template>
<xsl:template name="call_commands">
<xsl:variable name="root" select="document($xml_input_path)/testspec"/>
<xsl:for-each select="$root//command">
<xsl:sort select="."/>
<xsl:variable name="current" select="."/>
<xsl:apply-templates select="document($self)/xsl:stylesheet/xsl:template[@name = $current/@label]"/>
</xsl:for-each>
</xsl:template>
<xsl:template name="TOTO_short">
<xsl:text>Fonction TOTO :</xsl:text>
<xsl:variable name="dda" select="'b'"/>
<xsl:copy-of select="$dda"/>
</xsl:template>
<xsl:template name="TATA_interrupt">
Fonction TATA :
<xsl:variable name="v1_name" select="'NaN'"/>
<xsl:value-of select="$v1_name" />
</xsl:template>
</xsl:stylesheet>
这是我的输入 XML:
<testspec>
<command label="TOTO_short"/>
<command label="TATA_interrupt"/>
<command label="TOTO_short"/>
<command label="TATA_interrupt"/>
</testspec>
我的问题如下:在模板 TOTO_short 和 TATA_short 中,我想定义 2 个变量并显示它们的值...
但它不起作用!
你能帮我理解它的来源吗?
提前非常感谢:)
阿尔诺