2011-09-30 43 views
0

我很难用xsl打印标签中的属性。这是我的XML输入xsl concat函数

<input> 
    <subscriptons> 
     <services> 
      <service-info> 
       First 
      </service-info> 
      <service-info> 
       Second 
      </service-info> 
     </services> 
    </subscriptons> 
</input> 

现在使用XSL我想上面的XML转换为

<Main_Subscriptions elem="0"> 
    <Main_Services elem="0"> 
     First Service 
    </Main_Services> 
</Main_Subscriptions> 
<Main_Subscriptions elem="1"> 
    <Main_Services elem="1"> 
     Second Service 
    </Main_Services> 
</Main_Subscriptions> 

使用XSL我能除了参数ELEM =“X”得到的一切,基本上只要我正尝试使用"或<我的xsl失败,例如这是我正在做什么来获得Main_Subscriptions标记:

<xsl:value-of select="concat('&lt;Main_Subscriptions elem=&quot;', position(), '&quot;&gt;')" disable-output-escaping="yes" /> 

任何想法,为什么它不工作?

谢谢!

回答

4

,你可以简单地使用下面的代码:

<xsl:element name="Main_Subscriptions"> 
    <xsl:attribute name="elem"> 
     <xsl:value-of select="position()"/> 
    </xsl:attribute> 
</xsl:element> 
+0

完美工作,感谢。 – Rizwan

+0

欢迎:) – Ankur