我想删除 XSLT 中的标签,但将所有内容保留在原处。
我有这个来源:
<?xml version="1.0" encoding="UTF-8"?>
<DOCUMENT>
<div>
<p>foo</p>
<div>we want any divs found in here</div>
<p>we want to keep everything</p>
<p>except the div that follows DOCUMENT</p>
</div>
</DOCUMENT>
并且想要这个输出:
<?xml version="1.0" encoding="UTF-8"?>
<DOCUMENT>
<p>foo</p>
<div>we want any divs found in here</div>
<p>we want to keep everything</p>
<p>except the div that follows DOCUMENT</p>
</DOCUMENT>
不需要的<div>
总是跟随<DOCUMENT>
,这是<div>
我唯一想要删除的。
我可以用这个 XSLT 做到这一点
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="/DOCUMENT/div">
<xsl:apply-templates select="@*|node()"/>
</xsl:template>
</xsl:stylesheet>
问题:我不想使用身份转换模板执行此操作,因为我正在处理“拉”转换,而不是推。但我很难找到替代方案。