[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: How to resolve the absolute location of a node
On Sun, 17 Oct 1999, Jarno Elovirta wrote: > I'm trying to write a template that would return the absolute location path > of the node i'm processing. e.g. with processing the c elements of > > > <a><b x="y"><c/></b><b x="z" p="q"><c/></b></a> > > the templete would return > > /a/b[1]/c[1] and /a/b[2]/c[1] > How about this? <xsl:template match="*"> <xsl:call-template name="resolver" /> <xsl:apply-templates/> </xsl:template> <xsl:template name="resolver" > <xsl:for-each select="ancestor-or-self::*"> <xsl:variable name="currpos" select="generate-id(.)" /> <xsl:value-of select="concat('/',name())"/> <xsl:for-each select="../*" > <xsl:if test="generate-id(.)=$currpos"> <xsl:text>[</xsl:text> <xsl:value-of select="position()"/> <xsl:text>]</xsl:text> </xsl:if> </xsl:for-each> </xsl:for-each> </xsl:template> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
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
|