XSLT新手和XML数组

时间:2009-08-20 10:51:09

标签: xml xslt xslt-1.0

我有一些非常基本的XML:

<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<string>One</string>
<string>Two</string>
</ArrayOfString>

我怎样才能将其翻译成:

<ul>
 <li>One</li>
 <li>Two</li>
</ul>

使用XSLT?

以前我使用过:value但这些只是字符串吗?

2 个答案:

答案 0 :(得分:2)

我会这样做:

<xsl:stylesheet 
  version="1.0" 
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"  
>
  <xsl:template match="ArrayOfString">
    <ul>
      <xsl:apply-templates select="string" />
    </ul>
  </xsl:template>

  <xsl:template match="string">
    <li>
      <xsl:value-of select="." />
    </li>
  </xsl:template>
</xsl:stylesheet>

答案 1 :(得分:1)

这是你想要的吗?

<?xml version='1.0'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
    <ul>
    <xsl:apply-templates />
    </ul>
</xsl:template>
<xsl:template match="string">
    <li><xsl:value-of select="text()"></xsl:value-of></li>
</xsl:template>
</xsl:stylesheet>

它为我生成以下输出:

<?xml version='1.0' ?>
<ul>
<li>One</li>
<li>Two</li>
</ul>