xsl-list
[Top] [All Lists]

Re: [xsl] XPath for the selected node

2007-07-18 18:43:59
I don't know much about xquery, but in XSLT you can do this on any path:

<xsl:value-of select="ancestor-or-self::*/name()" separator="/" />

Or, not tested, the following if you need the depth as well:

<xsl:value-of  separator="/">
   <xsl:for-each select="ancestor-or-self::*">
      <xsl:value-of select="name()" />
      <xsl:text>[</xsl:text>
<xsl:value-of select="count(preceding-sibling::*[name() = current()/name()]" />
      <xsl:text>]</xsl:text>
   </xsl:for-each>
</xsl:value-of>


Cheers,
-- Abel

v vijith wrote:
Dear All,
I have an XML which has the structure like

<root>
    <data>
         <node1>Welcome </node1>
         <node2 refid="22">Some data</node2>
     </data>
     <anotherdata>
              <sometype refid=33>welcome</sometype>
      </anotherdata>
</root>

Using Xquery is there a way to find the xpath of all the nodes that
has refid as an attribute? For the above case, the answer that I would
be looking at it

root/data/node2
root/anotherdata/sometype

I went through some of the posts and found that saxon:path is an
option. Do I have any other way of doing it?

Any kind of pointer is appreciated!!

Thanks
Vij

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--





--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>