<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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>
  <publishDate position="left"/>
  <version position="none"/>
  <skin>  
    <groupId>org.apache.portals.pluto</groupId>
    <artifactId>pluto-site-skin</artifactId>
    <version>3.0-SNAPSHOT</version>
  </skin> 
  
  <body>
    <breadcrumbs>
      <item name="Home" href="http://portals.apache.org/pluto"/>
    </breadcrumbs>
    
    <links>
      <item name="Portlet 3.0 API" href="/portlet-3.0-apidocs/index.html"/>
      <item name="Portlet 2.0 API" href="/portlet-2.0-apidocs/index.html"/>
      <item name="Portlet 1.0 API" href="/portlet-1.0-apidocs/index.html"/>
      <item name="JSR 362 JCP Page" href="http://jcp.org/en/jsr/detail?id=362"/>
      <item name="JSR 286 JCP Page" href="http://jcp.org/en/jsr/detail?id=286"/>
      <item name="JSR 168 JCP Page" href="http://jcp.org/en/jsr/detail?id=168"/>
    </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="Status" href="/status.html"/>
      
      <item name="Architecture" href="/architecture.html"/>	

      <item name="Resources" href="/resources.html"/>
      
      <item name="FAQ" href="/faq.html"/>
      <item name="Wiki" href="http://wiki.apache.org/portals/Pluto"/>
      <item name="Issue Tracker (JIRA)" href="https://issues.apache.org/jira/browse/PLUTO"/>
      <item name="Get Involved" href="/helping.html"/>
    </menu>

	<menu name="Pluto 3.0">
      <item name="Getting Started" href="/v30/getting-started.html"/>
      <item name="Deploying Portlets" href="/v30/deploying.html"/>
      <item name="Portlet Concepts" href="/v30/portlet-api.html"/>
      <item name="Version 3 Features" href="/v30/v3Features.html"/>
      <item name="Using the TCK" href="/v30/tck.html"/>
      <item name="Release Notes" href="/v30/release-notes.html"/>
	</menu>    
	
	<menu name="Pluto 2.0">
      <item name="Getting Started" href="/v20/getting-started.html"/>
      <item name="Deploying" href="/v20/deploying.html"/>
      <item name="Embedding" href="/v20/embedding.html"/>
      <item name="Release Notes" href="/v20/release-notes.html"/>
      <item name="App Servers" href="/v20/app-servers.html"/>
      <item name="Powered By Pluto" href="/v20/powered.html"/>
	</menu>    
	
    <menu name="Pluto 1.1">
      <item name="Getting Started" href="/v11/getting-started.html"/>
      <item name="Deploying" href="/v11/deploying.html"/>
      <item name="Release Notes" href="/v11/release-notes.html"/>
    </menu>

    <menu  name="Subprojects">
      <item name="Overview" href="subprojects/subprojects.html"/>
	</menu>    
	
    <menu name='Project Info'>
    	<item name="Project Summary" href="project-summary.html"/>
    	<item name="Project Team" href="team-list.html"/>
    	<item name="Project License" href="license.html"/>
    	<item name="Mailing Lists" href="mail-lists.html"/>
    	<item name="Source Repository" href="source-repository.html"/>
    	<item name="Issue Tracking" href="issue-tracking.html"/>
    </menu>
 
  </body>
</project>
