首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > XML SOAP >

怎么使用xsl统计xml数据

2012-03-20 
如何使用xsl统计xml数据XML文件如下:ItemStatusPass/Status/ItemItemStatusPass/Status/It

如何使用xsl统计xml数据
XML文件如下:
<Item>
<Status>Pass</Status>
</Item>
<Item>
<Status>Pass</Status>
</Item>
<Item>
<Status>Fail</Status>
</Item>

怎样使用xsl统计出Pass和Fail的次数?以及Pass和Fail占总数的百分比?

[解决办法]

XML code
<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">  <xsl:template match="/">    <xsl:value-of select="count(//Item/Status[.='Pass'])"/><br/>  <xsl:value-of select="count(//Item/Status[.='Fail'])"/><br/>  <xsl:value-of select="count(//Item/Status[.='Fail'])*100 div count(//Item/Status)"/>  </xsl:template></xsl:stylesheet>
[解决办法]
稍加改动即可,保留2位用 10000, 保留1位用 1000 ,以此类推
XML code
<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">    <xsl:template match="/">        <xsl:value-of select="count(//Item/Status[.='Pass'])"/>        <br/>        <xsl:value-of select="count(//Item/Status[.='Fail'])"/>        <br/>        <xsl:value-of select="concat(string(round(count(//Item/Status[.='Pass'])*10000 div count(//Item/Status)) div 100),'%')"/>    </xsl:template></xsl:stylesheet> 

热点排行