这是我的xml:
<Items>
<Item>
<Id>1</Id>
<Code>A</Code>
<Value>5</Value>
<Unit>T</Unit>
</Item>
<Item>
<Id>2</Id>
<Code>A</Code>
<Value>50</Value>
<Unit>T</Unit>
</Item>
<Item>
<Id>2</Id>
<Code>B</Code>
<Value>10</Value>
<Unit>U</Unit>
</Item>
<Item>
<Id>3</Id>
<Code>B</Code>
<Value>10</Value>
<Unit>T</Unit>
</Item>
<Item>
<Id>4</Id>
<Code>C</Code>
<Value>10</Value>
<Unit>T</Unit>
</Item>
</Items>
如何按Code和sum Value属性显示分组的元素,但是如果Unit = U,则必须省略下2个元素。我使用xsl 1.0。在此示例中,我必须省略第三个项目之后的下两个项目,因此,最后两个项目。分组之前,我必须这样做。
<xsl:choose>
<xsl:when test="Unit = 'T'">
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="concat( $lines, '|', LineNumber)"/>|
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
<xsl:value-of select="$lines"/>
有什么想法吗?现在我有Id节点。我想将所有id分组放入行中,但是如果Unit为T,我不知道如何跳过接下来的两个元素