|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Printing ancestor elements of all element nodes
Thanks Mike.. Regards, Mukul On 8/3/05, Michael Kay <mike@xxxxxxxxxxxx> wrote: > <xsl:template match="*" mode="print-ancestors"> > <xsl:value-of select="concat(name(), ',')"/> > <xsl:apply-templates select=".." mode="print-ancestors"/> > </xsl:template> > > <xsl:template match="/" mode="print-ancestors">root</xsl:template> > > <xsl:template match="/"> > <xsl:for-each select="//*"> > <xsl:value-of select="name()"/> > <xsl:text> - </xsl:text> > <xsl:apply-templates select=".." mode="print-ancestors"/> > <xsl:text>
</xsl:text> > </xsl:for-each> > </xsl:template> > > Michael Kay > http://www.saxonica.com/ > > > -----Original Message----- > > From: Mukul Gandhi [mailto:gandhi.mukul@xxxxxxxxx] > > Sent: 03 August 2005 12:04 > > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > Subject: Printing ancestor elements of all element nodes > > > > I have this XML document - > > > > <root> > > <a> > > <b> > > <c/> > > <d/> > > <e> > > <f> > > <g/> > > <h/> > > </f> > > </e> > > </b> > > </a> > > </root> > > > > The following output is desired - > > root - > > a - root > > b - a,root > > c - b,a,root > > d - b,a,root > > e - b,a,root > > f - e,b,a,root > > g - f,e,b,a,root > > h - f,e,b,a,root > > > > How to do this with XSLT? > > > > I'll be testing this with both Xalan-J 2.6.0 and Saxon 8.4. I need a > > XSLT 1.0 solution. > > > > Regards, > > Mukul
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








