我有一个XML
文件:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<File>
<Cars>
<Car>
<Color>Blue</Color>
<Year>1988</Year>
<Quantity>150</Quantity>
</Car>
<Car>
<Color>Green</Color>
<Year>1989</Year>
<Quantity>200</Quantity>
</Car>
</Cars>
</File>
一个XSL
文件:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes" encoding="utf-8" media-type="text/xml"/>
<xsl:template match="File">
<File>
<vehicles>
<xsl:for-each select="Cars/Car">
<vehicle>
<vehicleColor>
<xsl:value-of select="Color"/>
</vehicleColor>
<vehicleYear>
<xsl:value-of select="Year"/>
</vehicleYear>
</vehicle>
</xsl:for-each>
</vehicles>
<TotalQuantity>
<xsl:value-of select="sum()"/> ///// Sum of quantity of all car (<Quantity>)
</TotalQuantity>
</File>
</xsl:template>
</xsl:stylesheet>
我想要计算每辆车的所有数量的总和,并在元素TotalQuantity
中显示结果。什么放在sum()方法?
我只使用XSL
1.0。我使用XML
类c#
XslCompiledTransform
答案 0 :(得分:0)
由于您当前的节点为File
,您需要:
sum(Cars/Car/Quantity)
当然。