<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
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.
-->
<!DOCTYPE org.apache.commons.menus SYSTEM 'http://jakarta.apache.org/commons/build/maven-build.dtd'>
<project name="Lang">

  <title>Lang</title>

  <body>
    <links>
      <item name="Jakarta Commons" href="http://jakarta.apache.org/commons/"/>
    </links>

    <menu name="Commons Lang">
      <item name="Overview" href="/index.html"/>
      <item name="Download" href="http://jakarta.apache.org/site/downloads/downloads_commons-lang.cgi"/>
      <item name="User guide" href="/userguide.html"/>
      <item name="Javadoc (2.2 release)" href="api-release/index.html"/>
    </menu>

    <menu name="Development">
      <item name="Building" href="/building.html"/>
      <item name="Mailing lists" href="/mail-lists.html"/>
      <item name="Team" href="/team-list.html"/>
      <item name="Tasks" href="/tasks.html"/>
      <item name="Proposal" href="/proposal.html"/>
      <item name="Developer guide" href="/developerguide.html"/>
      <item name="SVN repository" href="http://svn.apache.org/viewvc/jakarta/commons/proper/lang/trunk/"/>
      <item name="Javadoc (SVN latest)" href="apidocs/index.html"/>
    </menu>

    &commons;

  </body>
</project>
