我正在使用XSLT将图像元素从一个XML文件复制到一个新文件中。我使用以下模板来复制图像元素,但我认为有一种更简单的方法可以做到这一点。
...
<xsl:apply-templates select="art_id"/>
...
<xsl:template match="art_id"><xsl:text>
</xsl:text><image><art_id>
<xsl:attribute name="href"><xsl:value-of select="@href"/></xsl:attribute>
</art_id></image>
</xsl:template>
&#34; new&#34; XML图像元素是原始图像的精确副本。
答案 0 :(得分:1)
不确定是否有更简单的方法,但如果使用属性值模板,则可以执行此操作:
<xsl:template match="art_id">
<xsl:text>
</xsl:text>
<image>
<art_id href="{@href}"/>
</image>
</xsl:template>
答案 1 :(得分:0)
由于您谈到制作“精确副本”,xsl:copy-of
将是一种选择。
<xsl:template match="art_id">
<xsl:text>
</xsl:text>
<image>
<xsl:copy-of select="."/>
</image>
</xsl:template>