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
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--
Geert(_dot_)Josten(_at_)Daidalos(_dot_)nl
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
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--