正如標題描述我試圖採取這樣的XML:有條件刪除父節點,如果子節點是空
<Measurement>
<Name>Board_1_Output_0</Name>
<LongIdentifier>Board 1 Output 0<LongIdentifier/>
...
<ECUAddress>2000000F</ECUAddress>
</Measurement>
<Measurement>
<Name/>
<LongIdentifier/>
...
<ECUAddress/>
</Measurement>
,並有條件地刪除<Measurement>
如果<Measurement>
子節點都是空這樣的:
<Measurement>
<Name>Board_1_Output_0</Name>
<LongIdentifier>Board 1 Output 0<LongIdentifier/>
...
<ECUAddress>2000000F</ECUAddress>
</Measurement>
我目前的XSLT,對於這部分,看起來是這樣的:
<xsl:for-each select="Measurement">
<xsl:text>/begin MEASUREMENT</xsl:text>
<xsl:text>/* Name */	</xsl:text>
<xsl:value-of select ="Name"/>
<xsl:apply-templates select="LongIdentifier">
<xsl:text>ECU_ADDRESS				</xsl:text>
<xsl:value-of select ="ECUAddress"/>
<xsl:text>/end MEASUREMENT</xsl:text>
</xsl:for-each ><!-- Measurement -->
我以爲我可以有條件地看每個部分,而不是打印任何<Measurment>
XML標籤如果有孩子的標籤是空的,但是,我只能做到在離開父<Measurement>
元素,例如:
<Measurement></Measurement>
是否有當我發現我在同一個xslt樣式表中有一個空的子項時,如何刪除父xml節點?或者,是否需要通過不同的樣式表運行xml以刪除具有空子項的任何XML節點?
不應該同時刪除「測量」標籤,因爲兩者都有一個空的子元素「LongIdentifier」? –
可能重複[刪除父節點,如果一個子節點爲空](http://stackoverflow.com/questions/11539910/remove-parent-node-if-a-child-node-is-empty) –