1

通过转换我的xml,我遇到了一些问题。我想以正确的顺序蜂巢出子节点。

当前嵌套元素( / 节点)

<span style="font-family: [Ohne];">
   <span style="font-family: qwe;">etu</span>
   <!-- hive off this nested child-node above the parent -->
   restia volorsin  
</span>

元素(/节点)的预期嵌套和顺序

<!-- after xslt -->
<span style="font-family: [Ohne];">restia volorsin</span>
<span style="font-family: qwe;">etu</span>

查看更多示例代码

谁能给我一些提示?

4

1 回答 1

1

就这么简单

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output omit-xml-declaration="yes" indent="yes"/>
 <xsl:strip-space elements="*"/>

 <xsl:template match="span[span]">
  <xsl:copy>
       <xsl:copy-of select="@*|node()[not(self::span)]"/>
  </xsl:copy>
  <xsl:copy-of select="span"/>
 </xsl:template>
</xsl:stylesheet>

当此转换应用于提供的 XML 文档时:

<span style="font-family: [Ohne];">
   <span style="font-family: qwe;">etu</span>
   <!-- hive off this nested child-node above the parent -->
   restia volorsin
</span>

产生了想要的正确结果

<span style="font-family: [Ohne];"><!-- hive off this nested child-node above the parent -->
   restia volorsin
</span>
<span style="font-family: qwe;">etu</span>
于 2012-10-26T14:05:19.030 回答