Re: [xsl] Outputing Differences between two files

Subject: Re: [xsl] Outputing Differences between two files
From: Geert Josten <Geert.Josten@xxxxxxxxxxx>
Date: Mon, 18 Jul 2005 16:57:25 +0200
Hi Jonathan,

Use an index.

<xsl:key name="values" match="bb" use="string(.)" />

<xsl:template match="a">
  <xsl:if test="count(key('values', string(bb))) > 1">
    <xsl:copy>
      <xsl:copy-of select="@*|bbb" />
    </xsl:copy>
  </xsl:if>
</xsl:template>

Vary on this theme as you like...

Cheers,
Geert

Jonathan Marenus wrote:

I'm trying to write an XSL that receives an XML file
as input and outputs only the values that have a
certain sibling's value duplicated in the file.  For
example, if I have the following XML:

<a>
   <b>Value1</b>
   <bb>Value2</bb>
   <bbb>Value3</bbb>
</a>
<c>
   <b>Value4</b>
   <bb>Value2</bb>
   <bbb>Value5</bbb>
</c>

In this example, I want the output sibling to be
"a/bbb".  Since "Value2" is shown twice for element
bb, I want to output "Value3", since that is the
output sibling.  Any feedback regarding this example
would be appreciated, so that I can apply it to my
actual situation.

Thanks.

__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com




-- Geert.Josten@xxxxxxxxxxx IT-consultant at Daidalos BV, Bleiswijk (NL)

http://www.daidalos.nl/
tel:+31-(0)10-850 12 00
fax:+31-(0)10-850 11 99

GPG: 1024D/12DEBB50

Current Thread