<?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.
  -->

<project xmlns="http://maven.apache.org/DECORATION/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd"
  name="Apache Maven SCM">

  <body>
    <menu name="Maven SCM">
      <item name="Home" href="/index.html"/>
      <item name="Maven SCM Plugin" href="/maven-scm-plugin/index.html"/>
      <item name="Javadoc" href="/apidocs/index.html"/>
      <item name="SCM URL Format" href="/scm-url-format.html"/>
      <item name="Supported SCMs" href="/scms-overview.html" collapse="true">
        <item name="Mercurial" href="/mercurial.html"/>
        <item name="Git" href="/git.html"/>
        <item name="Local" href="/local.html"/>
        <item name="Subversion" href="/subversion.html"/>
      </item>
      <item name="Guides" href="/guide/index.html" collapse="true">
        <item name="How to use Maven SCM in my application" href="/guide/usage.html"/>
        <item name="How to write a new SCM provider" href="/guide/new_provider.html"/>
      </item>
      <item name="SCM Providers Matrix" href="/matrix.html"/>
      <!-- According to https://issues.apache.org/jira/browse/MNGSITE-152 -->
      <item name="License" href="http://www.apache.org/licenses/"/>
      <item name="Download" href="download.html"/>
    </menu>

    <menu ref="modules"/>
    <menu ref="reports"/>
  </body>
</project>
