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

xsl怎么合并相同内容

2012-03-11 
xsl如何合并相同内容想得到这样的XML:- html- dailys- dailydaily_no1/daily_nodate2010/03/2

xsl如何合并相同内容
想得到这样的XML:

- <html>
- <dailys>
- <daily>
<daily_no>1</daily_no> 
<date>2010/03/24</date> 
<member>A</member> 
- <myworkList>
- <mywork>
<mywork_no>1</mywork_no> 
<work>SSSSS</work> 
</mywork>
- <mywork>
<mywork_no>0</mywork_no> 
<work>FFFFFFFFFF</work> 
</mywork>
</myworkList>
</daily>
</dailys>
  </html>



所以写了如下xls:

<?xml version="1.0" encoding="Shift_JIS" ?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="/">
  <html> 
<dailys>
<xsl:for-each select="root/t_daily">
<xsl:sort select="daily_no" data-type="number" order="ascending"/>
  <daily>
  <xsl:element name="daily_no"><xsl:value-of select="@daily_no"/></xsl:element> 
  <xsl:element name="date"><xsl:value-of select="@date"/></xsl:element> 
<xsl:element name="member"><xsl:value-of select="@member"/></xsl:element> 
<myworkList>
  <xsl:for-each select="t_mywork">
<xsl:sort select="number(@mywork_no)" data-type="number" order="ascending"/>
<xsl:if test="number(@mywork_no) >= 0">
<mywork>
<xsl:element name="mywork_no"><xsl:value-of select="@mywork_no"/></xsl:element> 
<xsl:element name="work"><xsl:value-of select="@work"/></xsl:element> 
</mywork>
</xsl:if>
  </xsl:for-each>
  </myworkList>
  </daily>
  </xsl:for-each>
</dailys>
  </html>
  </xsl:template>
</xsl:stylesheet>

可结果出来的XML却是:

- <html>
- <dailys>
- <daily>
<daily_no>1</daily_no> 
<date>2010/03/24</date> 
<member>A</member> 
- <myworkList>
- <mywork>
<mywork_no>1</mywork_no> 
<work>SSSSS</work> 
</mywork>
</myworkList>
</daily>
- <daily>
<daily_no>1</daily_no> 
<date>2010/03/24</date> 
<member>A</member> 
- <myworkList>
- <mywork>
<mywork_no>0</mywork_no> 
<work>FFFFFFFFFF</work> 
</mywork>
</myworkList>
</daily>
</dailys>
  </html>


请教问题出在哪里??

[解决办法]
有什么问题,你的源XML文件是什么样的?

热点排行