Как условно скопировать элементы XML с использованием XSLT? - PullRequest
3 голосов
/ 25 августа 2010

Я пытаюсь условно скопировать узлы, используя XSL.Вот мой XML:

<root>
    <node_a>111</node_a>
    <node_b>222</node_b>
    <node_c>333</node_c>
</root>

Как мне просто скопировать все узлы, КРОМЕ "node_a", используя XSLT?

TIA

1 Ответ

2 голосов
/ 25 августа 2010

Используйте преобразование идентичности плюс пустой шаблон, соответствующий node_a.

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
  <xsl:template match="@*|node()">
    <xsl:copy>
      <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
  </xsl:template>
  <xsl:template match="node_a"/>
</xsl:stylesheet>

Работает как в XSLT1, так и в XSLT2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...