xsl-list
[Top] [All Lists]

Re: Selecting attribute from previous parent node

2006-01-30 07:17:49
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(_at_)saxonica(_dot_)com> 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(_at_)neptium(_dot_)com> wrote:
If your current node is: row//basket/flower[(_at_)type='tulip']

Then the previous non-tulip flower node is:
ancestor::flower[(_at_)type!='tulip']

And you can get (print) the previous flower type like this:
<xsl:apply-templates select="ancestor::flower[(_at_)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!


--~------------------------------------------------------------------
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>
--~--



--~------------------------------------------------------------------
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>
--~--



--~------------------------------------------------------------------
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>
--~--