使用 XSLT 1.0 和 Java 通过一次匹配在不同的子树中生成两个不同的标签

Generate two different tags in different sub-trees by one match using XSLT 1.0 and Java

我有这个输入 XML:
...

<body>
      <wp .../>
  </body>

...

我需要生成这个 XML: ...

<body>
<wp-list>
  <from_wp_1 .../>
  ...
</wp-list>
<ro>
  <from_wp_2.../>
  ...
</ro>
</body>

...

如何为一个输入 wp 在不同的子树中生成这两个不同的标签 from_wp_1 和 from_wp_2?

你的问题比较模糊,可以有很多不同的答案。我认为你想做这样的事情:

<xsl:template match="/body">
    <xsl:copy>
        <wp-list>
            <xsl:apply-templates select="wp"/>
        </wp-list>
        <ro>
            <xsl:apply-templates select="wp" mode="ro"/>
        </ro>
    </xsl:copy>
</xsl:template>

<xsl:template match="wp">
    <!-- do something -->
</xsl:template>

<xsl:template match="wp" mode="ro">
    <!-- do something else -->
</xsl:template>