[xsl] How determinate what is the position of all ancestors?

Subject: [xsl] How determinate what is the position of all ancestors?
From: "Giovani Librelotto" <grl@xxxxxxxxxxxx>
Date: Mon, 21 Oct 2002 16:59:41 +0100
Hello all,

How I can to know the position of all ancestors?
I have this XML file:

<?xml version="1.0" encoding="UTF-8"?>
<names>
	<name>Giovani</name>
	<family>
		<name>Father</name>
		<name>Mother</name>
	</family>
</names>

And this piece of stylesheet:

<xsl:element name="position">
  <xsl:for-each select="ancestor::*"><xsl:value-of
select="name(.)"/>[<xsl:value-of select="position()"/>]/</xsl:for-each>
</xsl:element>

That generate this:

<?xml version="1.0" encoding="utf-8"?>
<names>
	<name>Giovani</name>
	<position>names[1]/</position>
	<name>Father</name>
	<position>names[1]/family[2]/</position>
	<name>Mother</name>
	<position>names[1]/family[2]/</position>
</names>


But I want this(the complete path to the node):

<?xml version="1.0" encoding="utf-8"?>
<names>
	<name>Giovani</name>
	<position>names[1]/name[1]</position>
	<name>Father</name>
	<position>names[1]/family[1]/name[1]</position>
	<name>Mother</name>
	<position>names[1]/family[1]/name[2]</position>
</names>

Thanks for your help.
Regards,

Giovani 



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


Current Thread