我需要从元素中删除一个值,但是将元素本身保留在输出
XML中作为空元素.
我的输入文件:
- <a>
- <b>TEXT1
- <c>123</c>
- <d>qwe</d>
- <e>rty</e>
- </b>
- <b>TEXT2
- <c>345</c>
- <d>iop</d>
- <e>jkl</e>
- </b>
- </a>
- <a>
- <b>TEXT1
- <c></c>
- <d>qwe</d>
- <e>rty</e>
- </b>
- <b>TEXT2
- <c></c>
- <d>iop</d>
- <e>jkl</e>
- </b>
- </a>
XSLT 1.0
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:output indent="yes"/>
- <xsl:strip-space elements="*"/>
- <xsl:template match="node()|@*">
- <xsl:copy>
- <xsl:apply-templates select="node()|@*"/>
- </xsl:copy>
- </xsl:template>
- <xsl:template match="c">
- <c/>
- </xsl:template>
- </xsl:stylesheet>
XML输出
- <a>
- <b>TEXT1
- <c/>
- <d>qwe</d>
- <e>rty</e>
- </b>
- <b>TEXT2
- <c/>
- <d>iop</d>
- <e>jkl</e>
- </b>
- </a>
注意:< c />和< c>< / c>是等价的.