XSLT是一种功能性的语言,其中,除其他事项外,是指一个或xsl:variable
xsl:param
,指定一次不能改变它的值。
这并不妨碍在XSLT中表达任何问题的解决方案(XSLT是图灵完备版),并且只需要一个人根据命令式编程范例改变思路。
一旦你发布你的具体问题,许多读者将能够提供完整的XSLT解决方案。
下面是一个简单的例子:
我们“积累”在一个变量希望值,然后将它输出:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:variable name="vOddsAccumulator">
<xsl:apply-templates/>
</xsl:variable>
<xsl:template match="/">
<xsl:value-of select="$vOddsAccumulator"/>
</xsl:template>
<xsl:template match="*/*"/>
<xsl:template match="num[. mod 2 = 1]">
<xsl:value-of select="concat(., ' ')"/>
</xsl:template>
</xsl:stylesheet>
当这种转换应用于以下XML文档 :
<nums>
<num>01</num>
<num>02</num>
<num>03</num>
<num>04</num>
<num>05</num>
<num>06</num>
<num>07</num>
<num>08</num>
<num>09</num>
<num>10</num>
</nums>
通缉[R esult生产:
01 03 05 07 09
我猜你正在尝试在程序上使用xslt。您能否请您张贴您的输入样本以及您想要的输出?就目前而言,恐怕你的问题不能得到合理的回答。 – FailedDev