I am new to Forrest. I am using it to build a site for an open source project. So far I am a big fan... except for a problem with menu generation that is driving me nuts.

What I am looking to do is have 5 tabs that when selected only show the menu items relevant for the selected tab.

I want the tab/menu structure to look something like this:





        |-Where to get

Content for each of these sections is in its own directory (except for the content for the about section which is in the site root)

When I generate the site, 3 of the tabs work as expected (About, FAQ, and Help)... when a tab is selected, the tab is highlighted and only the menu items that are supposed to be under that tab are showing. However, the other two tabs (Download and Documentation) don't behave as expected... when one of those tabs is selected the menu shows ALL of the possible menu items (from all of the sections) and the tab isn't highlighted. Otherwise, the site builds just fine with no errors or broken links.

I've read through the various menus and linking docs and tips, but can't seem to get a grasp on what seems like arbitrary behavior. Other than site.xml and tabs.xml, is there something else that controls this behavior? Can anyone provide some insight on where I am going wrong?

This is the last thing that is holding us up from releasing the site and I'd hate to have to start over with a different tool.

Thanks in advance.


p.s.: I'm running v.70 and using the default pelt skin.


This is the tabs.xml:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE tabs PUBLIC "-//APACHE//DTD Cocoon Documentation Tab V1.1//EN" "http://forrest.apache.org/dtd/tab-cocoon-v11.dtd";>

<tabs software="Docs"

  <tab id="About" label="About" dir="/" indexfile="index.html"/>
<tab id="Download" label="Download" dir="Download" indexfile="index.html"/> <tab id="Docs" label="Documentation" dir="Docs" indexfile="index.html"/>
  <tab id="FAQ" label="FAQ" dir="FAQ" indexfile="index.html"/>
  <tab id="Help" label="Help" dir="Help" indexfile="index.html"/>



This is the site.xml:

<?xml version="1.0" encoding="UTF-8"?>

<site label="OpenControltier" href="" xmlns="http://apache.org/forrest/linkmap/1.0";>

<About label="About" tab="About">
    <Welcome label="Welcome" href="index.html"/>
    <Platform label="Platform Overview" href="platform.html"/>
    <Screenshots label="Screenshots" href="screenshots.html"/>

<CTierDownload label="Download" href="Download/" tab="Download">
    <GettingCTier label="Getting" href="index.html"/>
    <CTierLicense label="License" href="license.html"/>

<Docs label="Documentation" href="Docs/" tab="Docs">
  <Installation label="Installation" href="Installation/">
        <Overview label="Overview" href="install-overview.html"/>
        <Server label="Server">
<tomcat40FileBasedNoAuth label="Tomcat 4.1.x only" href="tomcat41-filesonly.html"/> <tomcat40RdbJndi label="Tomcat 4.0.x + RDB + Ldap" href="tomcat40-RdbJndi.html"/> <tomcat41RdbJndi label="Tomcat 4.1.x + RDB + Ldap" href="tomcat41-RdbJndi.html"/>
          <mysql4setup label="Mysql 4.0.x setup" href="mysql40.html"/>
          <ldap21setup label="OpenLdap 2.1.x setup" href="openldap21.html"/>
          <graphvizsetup label="Graphviz setup" href="graphviz.html"/>
        <Client label="Client">
          <Overview label="Overview" href="commander-install.html"/>
          <Pkg label="Package install" href="commander-pkg-install.html"/>
          <Ext label="Extension install" href="commander-ext-install.html"/>
  <Guides label="Guides" href="Guides/">
    <GuidesIndex label="Index" href="index.html"/>
    <Guide1 label="Guide 1" href="Guide1.html"/>
    <Guide2 label="Guide 2" href="Guide2.html"/>
  <CTierHOWTOs label="HOWTOs" href="HOWTOs/">
    <CTierHOWTOsIndex label="Index" href="index.html"/>
    <CTierHOWTO1 label="HOWTO 1" href="howto1.html"/>
    <CTierHOWTO2 label="HOWTO 2" href="howto2.html"/>
  <Reference label="Reference" href="Reference/">
    <Commands label="Commands"/>
    <Ant label="Ant">
      <Tasks label="Tasks"/>
      <Types label="Types"/>
    <Ont label="Ontology"/>
    <Configs label="Configuration"/>

<CTierFAQ label="FAQ" href="FAQ/" tab="FAQ">
    <GeneralFAQ label="General" href="index.html"/>

<Help label="Help" href="Help/" tab="Help">
    <WhereToGetHelp label="Where to get" href="index.html"/>
    <MailingLists label="Lists" href="mailing-list.html"/>

The href must be wholesite.html/pdf You can change the labels and node names
  <all label="All">
    <whole_site_html label="Whole Site HTML" href="wholesite.html"/>
    <whole_site_pdf label="Whole Site PDF" href="wholesite.pdf"/>

    <forrest href="http://forrest.apache.org/";>
      <linking href="docs/linking.html"/>
      <validation href="docs/validation.html"/>
      <webapp href="docs/your-project.html#webapp"/>
      <dtd-docs href="docs/dtd-docs.html"/>
    <cocoon href="http://cocoon.apache.org/"/>
    <xml.apache.org href="http://xml.apache.org/"/>