我在解決這個問題時遇到了一些麻煩,我確實需要一些幫助。 我想存儲具有非空的兄弟的最小變量。 我有一個XML至極看起來是這樣的:基於同級對xslt節點進行排序
<Root>
<Item>
<ValueOne>5</ValueOne>
<Item>bababa</Item>
</Item>
<Item>
<ValueOne>3</ValueOne>
<Item>ababa</Item>
</Item>
<Item>
<ValueOne>1</ValueOne>
<Item/>
</Item>
</Root>
所以我想最小ValueOne至極同級項目具有價值。 我的想法是這樣的:
<xsl:variable name="var">
<xsl:for-each select="Root/Item">
<xsl:if test="not(/Item = '')">
<xsl:sort data-type="text"/>
<xsl:if test="position()=1">
<xsl:value-of select="/Item"/>
</xsl:if>
</xsl:if>
</xsl:for-each>
</xsl:variable>
但這並不工作,我不知道爲什麼。正如你可能會告訴我不是最好的xslt ... 我不能重命名xml中的任何內容或更改它的結構。
編輯:代碼
在你的例子中,沒有空的Item。最後一個Item/Item包含兩個換行符和9個空格(或一個製表符?)。假設你的意思是合法的有效載荷。如果不是,您可以使用normalize-space將其刪除。請澄清。 –
我編輯了xml,沒有空格,沒有值。 – user2235494