[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Selecting attribute from previous parent node

Subject: Re: Selecting attribute from previous parent node
From: Andrea Berman <andrea.berman@xxxxxxxxx>
Date: Mon, 30 Jan 2006 10:23:38 -0500
andrea berman
Never mind, I figured it out.  Here's the solution:

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

Or, if you're already in the flower node, just ../../@type.

On 1/30/06, Andrea Berman <andrea.berman@xxxxxxxxx> wrote:
> I really did try.  I'm trying to establish a parent-child
> relationship.  I tried using ancestor in one instance, and it got the
> top node for the whole tree instead of the previous node for each
> instance.
>
> On 1/28/06, Michael Kay <mike@xxxxxxxxxxxx> wrote:
> > > That's great for non-dynamic code, but this code is dynamic.  So how
> > > would you reference it as not being equal to the current node?
> >
> > ancestor::flower[not(@type = current()/@type)]
> >
> > (this is turning into one of those threads where every time you get an
> > answer, you change the question. Perhaps you need to think more carefully
> > about how to articulate your requirements.)
> >
> > Michael Kay
> > http://www.saxonica.com/
> >
> >
> > >
> > > I'm basically looking to obtain the previous type for each flower node
> > > you're at.  Think of it like a parent-child relationship.  If the
> > > parent of tulip is rose, I want to be able to obtain the value of
> > > rose.
> > >
> > > On 1/27/06, Thang X. Le <tle@xxxxxxxxxxx> wrote:
> > > > If your current node is: row//basket/flower[@type='tulip']
> > > >
> > > > Then the previous non-tulip flower node is:
> > > > ancestor::flower[@type!='tulip']
> > > >
> > > > And you can get (print) the previous flower type like this:
> > > > <xsl:apply-templates select="ancestor::flower[@type!='tulip']"/>
> > > >
> > > > <xsl:template match="flower">
> > > >        <xsl:value-of select="@type"/>
> > > > </xsl:template>
> > > >
> > > > Or maybe I don't quite understand the requirements...
> > > >
> > > > On 27 Jan 2006 at 17:28, Andrea Berman wrote:
> > > >
> > > > > It's Friday!  Please, have pity upon me and save my sanity!
> > > > >
> > > > > Say I have the following style of XML:
> > > > >
> > > > > <row>
> > > > >    <basket>
> > > > >      <flower type="rose">
> > > > >        <basket>
> > > > >          <flower type="tulip">
> > > > >            <basket>
> > > > >               ...
> > > > >            </basket>
> > > > >          </flower>
> > > > >        </basket>
> > > > >      </flower>
> > > > >    </basket>
> > > > > </row>
> > > > >
> > > > > If I'm at node "flower" with type of "tulip", how do I
> > > reference the
> > > > > previous flower's type?
> > > > >
> > > > >
> > > > > Thanks!

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.