Re: [xsl] Read a parent node for particular chid using xsl

Subject: Re: [xsl] Read a parent node for particular chid using xsl
From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx>
Date: Wed, 24 Mar 2004 09:42:29 +0000
Hi Shashi,

> I am not able to display the result as parent tile and child title
> in single row.

I think that you're probably having problems because the template for
ReferencedBy does:

  <xsl:value-of select="//Result/@title" />

This will *always* give you the title of the first Result in your
document because it's an absolute path: it starts at the root node for
the document, finds all the title attributes of the Result elements,
and then gives you the value of the first one.

What you want is to get the title attribute of the Result element
that's the parent of the current ReferencedBy element. To do that, use
the parent axis:

  <xsl:value-of select="parent::Result/@title" />

A shorthand for getting the parent of a node is "..", so you could
alternatively use:

  <xsl:value-of select="../@title" />

Note that you probably want to make the same change to the rest of the
paths in that template.

Cheers,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/

Current Thread