我想計算取決於不同元素屬性的值,然後求和計算出的值。XSL如何計算根據元素屬性計算的元素值?
xml的構造是這樣的:
<elements>
<element type="type1">
<value>10</value>
<date>01.05.2012</date>
</element>
<element type="type2">
<value>20</value>
<date>02.03.2012</date>
</element>
<element type="type2">
<value>20</value>
<date>02.03.2012</date>
</element>
</elements>
我在XSD用於xsd:alternatives
創建元素的不同「類型」。
的XSL是這樣的:
<xsl:for-each select="/elements">
<xsl:sort select="date"/>
<xsl:choose>
<xsl:when test="type='type1'">
<xsl:value-of select="value*20"/>
<xsl:value-of select="date"/>
</xsl:when>
<xsl:when test="type='type1'">
<xsl:value-of select="value*10"/>
<xsl:value-of select="date"/>
</xsl:when>
</xsl:choose>
(Here should be a sum of all the values that have been calculated.)
</xsl:for-each>
我希望能夠展現價值有人計算後,由不同的值進行排序(使用取決於「類型」這是一個因素。)他們的日期並顯示所有計算值的總和。
我確信有更好的方法來做我想做的事情,我對任何建議感到高興。
什麼是倍增因子type1和TYPE2?你的例子顯示了對type1的測試和乘以不同的值。 –