[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: [xsl] $5 PAYPAL for correct answer still not claimed! Searchi ng for an attribute across different elements with ancestoral elements re turned


Subject: RE: [xsl] $5 PAYPAL for correct answer still not claimed! Searchi ng for an attribute across different elements with ancestoral elements re turned
From: Bedwell Tom <Tom.Bedwell@xxxxxxx>
Date: Fri, 20 Jul 2001 12:14:47 +0100

I wish to return all brands/lines/items that have this @OFFER attribute.
If it is an ITEM I wish to return its parent LINE and grandparent BRAND as
well.  If it is a LINE, I wish to return its child ITEMs and parent BRAND as
well.  If it is BRAND I wish it to return its child LINEs and its
grandchildren ITEMs. I DO NOT WANT any siblings of the matched element.


______________________________

Transform the problem so you look at the attributes of decendants and you
get a solution like this.


<!-- This copies any element having a descendant with an  OFFER attribute
-->

<xsl:template match="*[descendant::*[@OFFER]]">
<xsl:copy>
	<xsl:copy-of select="@*"/>
	<xsl:apply-templates select="*"/>
</xsl:copy>
</xsl:template>

<!-- this duplicates an offer element and all its descendants-->
<xsl:template match="*[@OFFER]">
	<xsl:copy-of select="."/>
</xsl:template>


Tom

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list