|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: === Identifying a unique node in a DOM tree ===
Jonathan Asbell wrote:
>
...
> I want to be able to ask the node.."who are you" and it would reply "I am
> currently /.people.person.name.John"
>
David did come up with the solution to this as a one-liner (which I
luckily saw before I could post my own particularly horrid and laborious
solution).
Just for completeness, I packaged his solution into two call-by-name
templates (for attributes and templates) which I've re-posted below only
because the xsl-list archive seems to be down right now.
Hope this helps -
Francis.
<!-- paths from elements -->
<xsl:template name="elementPath">
<xsl:for-each select="(ancestor-or-self::*)">/*[<xsl:value-of
select="1+count(preceding-sibling::*)"/>]</xsl:for-each>
</xsl:template>
<!-- paths from attributes -->
<xsl:template name="attributePath">
<xsl:for-each select="parent::*">
<xsl:call-template name="elementPath" />
</xsl:for-each>
<xsl:text>/@</xsl:text>
<xsl:value-of select="name(.)"/>
</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
|

Cart








