RE: [xsl] What's wrong with my ancestor syntax?

Subject: RE: [xsl] What's wrong with my ancestor syntax?
From: "Austin, Darrel" <Darrel.Austin@xxxxxxxxxxxxxxxxxx>
Date: Tue, 27 Mar 2007 09:15:56 -0500
(OOOPS...sent that last email before finishing...sorry about that...)

> I think you want to know...

Hmm...I don't think I fully explained what I was looking for very well.

We store out entire site structure in XML. We want to make an RSS feed
that will return the most recently updated pages that fall underneath a
specific node of the menu.

So, if my structure was:

 - staff
 - - mary
 - - bob

I want to be able to say "grab the recently updated pages in the 'staff'
section" so I only want to grab staff, mary, and bob, and then sort them
by date.

The more I look at this, the more I'm confused as to if I want to select
descenders or ascenders in the match statement. It appears I could use
both methods via different syntax?

> if the current eleemnt or ancestor
> has a pageID child, so that's
> 	<xsl:for-each
> select="*/menuItem[ancestor-or-self::menuItem/pageID = $pageID]">

Hmm...that doesn't quite work either. Here's some specific Xml:

      <browserTitle>Home Page</browserTitle>
         <browserTitle>District Administration</browserTitle>

I want to pass in the pageID of '938' and, as such, grab both nodes in
the above XML.

I think, in english, I want to say "grab every menuItem that has a
pageID of 938 or is a child of a menuItem with a pageID of 938"

Said that way, I should probably use descendants. I think I'm confused
between the concept of 'is a child of' vs. 'has a parent of'.


Current Thread