RE: [xsl] Navigating an XML file with xsl:for-each etc.

Subject: RE: [xsl] Navigating an XML file with xsl:for-each etc.
From: "Khorasani, Houman" <houman_khorasani@xxxxxxxxxxxxxx>
Date: Tue, 30 Aug 2005 17:01:00 +0100
Many thanks Michael, it works.

Now I understand how to navigate the pointers through the current node
and the node I searched for.

Regards
Houman



-----Original Message-----
From: Michael Kay [mailto:mike@xxxxxxxxxxxx]
Sent: 26 August 2005 17:58
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: [xsl] Navigating an XML file with xsl:for-each etc.

> So I have to check what are inside the "add" and compare them
> one by one
> against those under "delete". If equal then output.  I tried
> to explain
> it better in my shopping list example. :)
>
> Do you think such a generic thing is possible?

Yes, it's entirely possible, but you still haven't given a very precise
specification. For example if there are two identical elements under
"add"
do you require exactly two matching elements under "delete"? Or at least
two? Or is one enough?

You could start with something like

<xsl:for-each select="add/*">
  <xsl:if test="../../delete/*[name()=current()/name()]">
    ... there's a match ...
  </xsl:if>
</xsl:for-each>

Michael Kay
http://www.saxonica.com/

Current Thread