| Subject: Recursive selection, elegantly From: "Stephen Tredrea" <stephen.tredrea@xxxxxxxxxxxxx> Date: Sun, 6 Jun 2004 09:32:32 +0200 | 
Any suggestion on getting this to work? I can do it in four steps but not in
three as attempted here!
Thanks, Stephen
XML (snippet):
  <menu ref="main_menu">
    <item resource="/" />
    <item resource="/who_we_are" />
    <item resource="/contact_us" />
    <item resource="/disclaimer" />
  </menu>
  <page about="/">
    <name>Home</name>
  </page>
  <page about="/who_we_are">
    <name>About us</name>
  </page>
  ...etc...
XSL (snippet):
  <xsl:template match="/">
    <xsl:apply-templates select="//menu[@ref='main_menu'" mode="main_menu"
/>
  </xsl:template>
  <xsl:template match="menu" mode="main_menu">
    <table>
    <tr>
      <xsl:apply-templates select="//*[@about = item/resource]"
mode="menu_item" />
    </tr>
    </table>
  </xsl:template>
  <xsl:template match="*" mode="menu_item">
    <td>
      <xsl:element name="a">
        <xsl:attribute name="href"><xsl:value-of select="@about"
/></xsl:attribute>
        <xsl:value-of select="name" />
      </xsl:element>
    </td>
  </xsl:template>
Required HTML:
  <table>
  <tr>
    <td><a href="/">Home</a></td>
    <td><a href="/who_we_are">About us</a></td>
    ...etc...
  </tr>
  </table>
| Current Thread | 
|---|
| 
 | 
| <- Previous | Index | Next -> | 
|---|---|---|
| RE: [xsl] Javascript in Xsl using-X, Josh Canfield | Thread | Re: [xsl] Recursive selection, eleg, Mukul Gandhi | 
| Re: [xsl] Javascript in Xsl using-X, Barry Lay | Date | Re: [xsl] Recursive selection, eleg, Mukul Gandhi | 
| Month |