Re: [xsl] traversing up nodes until a certain attribute, then back to current node

Subject: Re: [xsl] traversing up nodes until a certain attribute, then back to current node
From: xslt user <xsltacct@xxxxxxxxx>
Date: Wed, 28 Mar 2007 06:24:40 -0700 (PDT)
thanks for the help works great!


--- David Carlisle <davidc@xxxxxxxxx> wrote:

> 
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
>   <xsl:template match="*">
>     <xsl:param name="x"/>
>     <xsl:text>
</xsl:text>
>     <xsl:choose>
>       <xsl:when test="$x">
> 	<xsl:variable name="nx" select="concat($x,'
> ',name())"/>
> 	<xsl:value-of select="$nx"/>
> 	<xsl:apply-templates select="*">
> 	  <xsl:with-param name="x" select="$nx"/>
> 	</xsl:apply-templates>
>       </xsl:when>
>       <xsl:otherwise>
> 	<xsl:value-of select="name()"/>
> 	<xsl:apply-templates select="*"/>
>       </xsl:otherwise>
>     </xsl:choose>
> </xsl:template>
> 
>   <xsl:template match="*[@id]">
>     <xsl:text>
</xsl:text>
>     <xsl:value-of select="@id"/>
>     <xsl:apply-templates select="*">
>       <xsl:with-param name="x" select="@id"/>
>     </xsl:apply-templates>
>   </xsl:template>
> 
> </xsl:stylesheet>
> 
> 
> $ saxon id1.xml  id1.xsl
> <?xml version="1.0" encoding="utf-8"?>
> root
> zero
> a
> a two
> c
> d
> d five
> d five six
> d five six seven
> 
> 
> David
> 
> 



 
____________________________________________________________________________________
Get your own web address.  
Have a HUGE year through Yahoo! Small Business.
http://smallbusiness.yahoo.com/domains/?p=BESTDEAL

Current Thread