you need to locate all ITEM nodes
-- //ITEM
then check the very preceding TITLE node
-- [preceding::TITLE[1] != $title1
finally, use position() to give you the numbers
Good luck.
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt">
<xsl:variable name="title1" select="'Raging River'"/>
<xsl:template match="/">
<xsl:for-each select="//ITEM[preceding::TITLE[1] != $title1]">
<xsl:value-of select="concat(position(), '. ', .)"/><br/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of
tsterlin(_at_)email(_dot_)arizona(_dot_)edu
Sent: Wednesday, February 18, 2004 10:28 PM
To: XSL-List(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject:
Hello,
I'm attempting to produce an HTML document from an XML one using XSLT. I
need to make a numbered list of a certain tag's(<ITEM>) info contained
within
the XML document. This challenge here is that I only want certain <ITEM>s
to
be contained in my list while others should be omitted, however all <ITEM>s
have the same ancestry. The only distinguishing element is a sibling tag
known
as <TITLE> with different literal values stored in them. It is the value
stored in this <TITLE> that needs to determine the <ITEM>'s inclusion to or
exclusion from the list:
<GROUP>
<PARA0>
<TITLE>Magic Mountains</TITLE>
<STEP1>
<ITEM>This is the first item.</ITEM>
</STEP1>
<STEP1>
<ITEM>This is the second item.</ITEM>
</STEP1>
</PARA0>
<PARA0>
<TITLE>Raging River</TITLE>
<STEP1>
<ITEM>I don't want this item.</ITEM>
</STEP1>
<STEP1>
<ITEM>I don't want this item either.</ITEM>
</STEP>
</PARA0>
<PARA0>
<TITLE>Spectacular Sky</TITLE>
<STEP1>
<ITEM>This is the third item.</ITEM>
</STEP1>
<STEP1>
<ITEM>This is the fourth item.</ITEM>
</STEP1>
</PARA0>
</GROUP>
---------------The HTML output should be as follows:
1. This is the first item.
2. This is the second item.
3. This is the third item.
4. This is the fouth item.
Any ideas?
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list