Your "important" elements are not siblings of each other, so you can't
use the following-sibling axis to locate them. Use the "following" axis,
or a more specific path expression such as
../../following-sibling::document[1]/filtered-text/important
Michael Kay
Software AG
home: Michael(_dot_)H(_dot_)Kay(_at_)ntlworld(_dot_)com
work: Michael(_dot_)Kay(_at_)softwareag(_dot_)com
-----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
Mani Malarvannan
Sent: 04 December 2002 21:29
To: XSL-List(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] following-sibling question
Hi,
I've following XSL and XML, when I apply the XSL to the XML
I'm getting
the following output
Test 1Test 1Test 2
but I need the output to be Test 1Test 2
It shoud remove the same values that comes within the <important>
tag while printing it.
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output
method="html"
doctype-public="-//W3C//DTD HTML 4.0 Transitional//EN"
encoding="iso-8859-1"
indent="no" />
XSL-file
<xsl:template match="document-list" >
<xsl:for-each select="document/filtered-text/important[not(. =
following-sibling::important[1])]">
<xsl:value-of select="."/>
</xsl:for-each>
</xsl:template>
XML-file
<document-list>
<document>
<filtered-text>
<important>Test 1</important>
</filtered-text>
<word>
<p>
<WORD>word 1</WORD>
</p>
</word>
</document>
<document>
<filtered-text>
<important>Test 1</important>
</filtered-text>
<word>
<p>
<WORD>word 11</WORD>
</p>
</word>
</document>
<document>
<filtered-text>
<important>Test 2</important>
</filtered-text>
<word>
<p>
<WORD>word 11</WORD>
</p>
</word>
</document>
</document-list>
</xsl:stylesheet>
Thanks for the help
-Mani
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list