将一个xml转换为另一个xml的XSLT代码

将一个xml转换为另一个xml的XSLT代码,xslt,Xslt,大家好,我是XSLT新手。请帮助创建XSLT以获得以下输出 输入XML <ProjectedMonthlyIncomeList> <ProjectedMonthlyIncome> <StartDate>2014-09-11T00:00:00-04:00</StartDate> <EndDate>2014-09-30T00:00:00-04:00</EndDate> <Month&

大家好,我是XSLT新手。请帮助创建XSLT以获得以下输出

输入XML

<ProjectedMonthlyIncomeList>
  <ProjectedMonthlyIncome>
      <StartDate>2014-09-11T00:00:00-04:00</StartDate>
      <EndDate>2014-09-30T00:00:00-04:00</EndDate>
      <Month>Sep</Month>
      <Income>372.00</Income>
  </ProjectedMonthlyIncome>
  <ProjectedMonthlyIncome>
      <StartDate>2014-10-01T00:00:00-04:00</StartDate>
      <EndDate>2014-10-31T00:00:00-04:00</EndDate>
      <Month>Oct</Month>
      <Income>222.00</Income>
  </ProjectedMonthlyIncome>
  <ProjectedMonthlyIncome>
      <StartDate>2014-11-01T00:00:00-04:00</StartDate>
      <EndDate>2014-11-29T23:00:00-05:00</EndDate>
      <Month>Nov</Month>
      <Income>379.00</Income>
  </ProjectedMonthlyIncome>
XSLT:

输出XML

<Mon1>372.00</Mon1>
<Mon2>222.00</Mon2>
<Mon3>379.00</Mon3>
我希望收入标签映射到每个项目的Mon1、Mon2、Mon3月收入标签

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="ProjectedMonthlyIncomeList">
    <xsl:for-each select="ProjectedMonthlyIncome/Income">
        <xsl:element name="Mon{position()}">
            <xsl:value-of select="."/>
        </xsl:element>
    </xsl:for-each>
</xsl:template>
</xsl:stylesheet>

发布您的XSLT,您已经尝试过的内容。现在,我如何增加Sequences的值?通常做法是在代码区而不是注释区发布输入xml、XSLT代码和所需结果。请参阅下面的代码。谢谢您的帮助。我们使用的是1.0版,所以不知道代码片段是否可以工作。我假设它也可以在1.0版中工作,只需将XSLT版本更改为1.0。如果标记名不同,例如say而不是mon1、mon2,我们如何做同样的事情?monstart、monend等等只有两种类型monstart'和'monend'?,在这种情况下使用if条件,如if position=1然后是'monstart',if position=2然后是'monend'。不,不仅仅是两种类型,如果我们说字符串作为标记,那么我们不能使用position函数,那么在这种情况下,aproach应该是什么
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="ProjectedMonthlyIncomeList">
    <xsl:for-each select="ProjectedMonthlyIncome/Income">
        <xsl:element name="Mon{position()}">
            <xsl:value-of select="."/>
        </xsl:element>
    </xsl:for-each>
</xsl:template>
</xsl:stylesheet>