<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright 2004 The Apache Software Foundation
Licensed  under the  Apache License,  Version 2.0  (the "License");
you may not use  this file  except in  compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed  under the  License is distributed on an "AS IS" BASIS,
WITHOUT  WARRANTIES OR CONDITIONS  OF ANY KIND, either  express  or
implied.

See the License for the specific language governing permissions and
limitations under the License.
-->

<project name="Pluto">
  
  <bannerLeft>
    <name>Pluto</name>
    <src>http://portals.apache.org/pluto/images/apache-portals.gif</src>
    <href>http://portals.apache.org/pluto/</href>
  </bannerLeft>
  <bannerRight>
    <src>http://portals.apache.org/pluto/images/banner.png</src>
  </bannerRight>
  
  <body>
    
    <links>
      <item name="JSR 168" href="http://jcp.org/en/jsr/detail?id=168"/>
      <item name="JSR 286" href="http://jcp.org/en/jsr/detail?id=286"/>
      <item name="Chinese Translation" href="http://people.apache.org/~zheng/pluto/chinese/"/>
    </links>
    
    <menu name="The Pluto Project">
      <item name="About Pluto" href="/index.html"/>
      <item name="Mission" href="/mission.html"/>
      <item name="Download" href="/download.html"/>
      <item name="News" href="/news.html"/>
      <item name="FAQ" href="/faq.html"/>
      <item name="Wiki" href="http://wiki.apache.org/portals/Pluto"/>
      <item name="Powered By Pluto" href="/powered.html"/>
      <item name="Get Involved" href="/get-involved.html"/>
    </menu>
    
    <menu name="Pluto 1.0.1">
      <item name="Getting Started" href="/v101/install.html"/>
      <item name="Resources" href="/v101/resources.html"/>
      <item name="User Guide" href="/v101/userguide/index.html">
        <item name="Portal Guide" href="/v101/userguide/portal.html"/>
        <item name="Testsuite Guide" href="/v101/userguide/testsuite.html"/>
      </item>
      <item name="Developer Guide" href="/v101/developer/index.html">
        <item name="Architecture" href="/v101/developer/arch.html"/>
        <item name="Obtaining Source" href="/v101/developer/subversion.html"/>
        <item name="Building From Source" href="/v101/developer/build_source.html"/>
        <item name="Integrating" href="/v101/developer/integrate.html"/>
      </item>
    </menu>
    
    <menu name="Pluto 1.1">
      <item name="Getting Started" href="/v11/getting-started.html"/>
      <item name="Deploying" href="/v11/deploying.html"/>
      <item name="App Servers" href="/v11/app-servers.html"/>
      <item name="Architecture" href="/v11/architecture.html"/>
      <item name="Resources" href="/v11/resources.html"/>
      <item name="Subprojects" href="/v11/subprojects.html" collapsed="true">
        <item name="Portlet Container" href="/pluto-container/index.html"/>
        <item name="Portlet Tags" href="/pluto-taglib/index.html"/>
        <item name="Portal Driver" href="/pluto-portal-driver/index.html"/>
        <item name="Portal" href="/pluto-portal/index.html"/>
        <item name="Testsuite" href="/pluto-testsuite/index.html"/>
        <item name="Descriptor API" href="/pluto-descriptor-api/index.html"/>
        <item name="Descriptor Impl" href="/pluto-descriptor-impl/index.html"/>
        <item name="Optional Services" href="/pluto-optional-services/index.html"/>
        <item name="Maven Plugin" href="/maven-pluto-plugin/index.html"/>
        <item name="Ant Tasks" href="/pluto-ant-tasks/index.html"/>
        <item name="Util" href="/pluto-util/index.html"/>
      </item>
    </menu>
    
    ${reports}
    
  </body>
  
</project>
