Subject: Re: Connecting the Source and Destination fields
From: Ronan Klyne <ronan.klyne@xxxxxxxxxxx>
Date: Wed, 29 Aug 2007 12:26:32 +0100
|
Yaswanth wrote:
> Hi can you please explain me what exactly the below line is doing and how it
> is working?
>
> <xsl:for-each
> select="/root/connection[not(/root/connection/@destination = @source)]">
First, some facts:
* If a connection has a destination that does not equal the source of
any other connection, then it is and the end of the chain.
* If a connection has a source that does not equal any other
connection's destination, then it is the start of the chain.
/root/connection[not(/root/connection/@destination = @source)]
This line is designed to select all the nodes that represent the start
of a chain. It does this by expressing the above statement in XPath:
"If a connection has a source that does not equal any other connection's
destination, then it is the start of the chain."
So, we want to select connections:
/root/connection
with a source attribute:
/root/connection[@source]
that does not equal any connection's destination:
/root/connection[not(/root/connection/@destination = @source)]
I hope this explains it...
# r
--
Ronan Klyne
Business Collaborator Developer
Tel: +44 (0)870 163 2555
ronan.klyne@xxxxxxxxxxx
www.groupbc.com
|