3

我将链接以转换具有以下属性的“名称”属性的 XML:

<books>
  <book name="TheBumperBookOfXMLProgramming"/>
  <book name="XsltForDummies"/>
</books>

放入名为 name 属性中的元素中:

<books>
  <TheBumperBookOfXMLProgramming/>
  <XsltForDummies/>
</books>

使用 XSLT。有任何想法吗?

4

2 回答 2

4

您可以使用以下名称创建元素xsl:element

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet 
     version="1.0" 
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="xml" indent="yes"/>

  <xsl:template match="/">
    <books>
      <xsl:apply-templates />
    </books>

  </xsl:template>

  <xsl:template match="book">
    <xsl:element name="{@name}" />
  </xsl:template>

</xsl:stylesheet>
于 2009-03-30T15:24:25.883 回答
3
<xsl:template match="book">
   <xsl:element name="{@name}">
       <xsl:copy-of select="@*[name()!='name'] />
   </xsl:element>
</xsl:template>

<book>这也会复制未命名为“名称”的任何属性

<book name="XsltForDummies" id="12" />

会变成

<XsltForDummies id="12 />
于 2009-03-30T15:30:03.967 回答