我正在为一些基本的 XSLT 苦苦挣扎。我想从某些 XML 中删除一个元素,具体取决于它是否具有某个属性。
XML 看起来像这样:
<root>
<Request URL="www.google.com">
<id name="google"/>
</Request>
<Request URL="www.yahoo.com">
<id name="yahoo"/>
</Request>
</root>
如果 URL 是“www.google.com”,我想删除 Request 元素,还想删除元素和 ,所以我最终会得到以下内容:
<root>
<Request URL="www.yahoo.com">
<id name="yahoo"/>
</Request>
</root>
到目前为止,我有以下内容,但它不起作用:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!--identity template copies everything forward by default-->
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<!--empty template suppresses this attribute-->
<xsl:template match="Request[@Url='www.google.com']"/>
</xsl:stylesheet>