This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
position of first empty element which is child of nodes p...
- To: "xsl-list at lists dot mulberrytech dot com" <xsl-list at lists dot mulberrytech dot com>
- Subject: [xsl] position of first empty element which is child of nodes p...
- From: "Brennan OShea" <Brennan dot OShea at alltel dot com>
- Date: Fri, 16 Feb 2001 12:59 -0600
- Reply-To: xsl-list at lists dot mulberrytech dot com
Subject: position of first empty element which is child of nodes processed by
"for-each"
I have the following XML:
<TRANSACTION>
<Entry Index="1">
<BdId>487</BdId>
</Entry>
<Entry Index="2">
<BdId>798</BdId>
</Entry>
<Entry Index="3">
<BdId/>
</Entry>
<Entry Index="4">
<BdId/>
</Entry>
<Entry Index="5">
<BdId/>
</Entry>
</TRANSACTION>
and the following XSL:
<xsl:variable name="Num">
<xsl:for-each select="TRANSACTION/Entry">
<xsl:choose>
<xsl:when test="string-length(./BdId) = 0">
<xsl:value-of select="position()"/>
</xsl:when>
</xsl:choose>
</xsl:for-each>
</xsl:variable>
And I want to be able to get the position of the first empty "<BdId>" element --
("3" in the XML above). In the XSL above "Num" is set to "345" since I cannot
break out of the for-each loop when the empty <BdId> is encountered. I saw a
way to do this on the FAQ when what is being tested is an "attribute" of what is
being iterated through but not a child.
Any help will be greatly appreciated.
Brennan
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list