xslt 3.0 xsl:evaluate 示例
xslt 3.0 xsl:evaluate example
对于以下 xml 文档:
<company>
<employee>
<name>John Andrews</name>
<age>23</age>
<salary>4000</salary>
<division>Accounting</division>
</employee>
</company>
我有这样的xsl
<xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xsl:output method="text"/>
<xsl:template match="/">
<xsl:value-of select="company/employee/name"/>
<xsl:variable name="test">
<xsl:text>company/employee/name</xsl:text>
</xsl:variable>
<xsl:evaluate xpath="$test"/>
</xsl:template>
</xsl:stylesheet>
如何在 xsl:evaluate 中使用 $test 变量以获得与在
中相同的结果
<xsl:value-of select="company/employee/name"/>
可能吗?
您需要设置上下文项,例如
<xsl:evaluate xpath="$test" context-item="."/>
对于以下 xml 文档:
<company>
<employee>
<name>John Andrews</name>
<age>23</age>
<salary>4000</salary>
<division>Accounting</division>
</employee>
</company>
我有这样的xsl
<xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xsl:output method="text"/>
<xsl:template match="/">
<xsl:value-of select="company/employee/name"/>
<xsl:variable name="test">
<xsl:text>company/employee/name</xsl:text>
</xsl:variable>
<xsl:evaluate xpath="$test"/>
</xsl:template>
</xsl:stylesheet>
如何在 xsl:evaluate 中使用 $test 变量以获得与在
中相同的结果<xsl:value-of select="company/employee/name"/>
可能吗?
您需要设置上下文项,例如
<xsl:evaluate xpath="$test" context-item="."/>