<?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.8.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 http://maven.apache.org/xsd/decoration-1.8.0.xsd"
  name="Doxia">
  <version position="none" />

  <bannerRight>
    <name>Doxia</name>
    <src>images/doxia-logo.png</src>
    <href>https://maven.apache.org/doxia/</href>
  </bannerRight>

  <edit>${project.scm.url}</edit>

  <body>
    <links>
      <item name="Get Sources" href="https://maven.apache.org/doxia/scm.html" />
    </links>
    <breadcrumbs>
      <item name="Doxia" href="https://maven.apache.org/doxia/index.html"/>
    </breadcrumbs>

    <menu name="About Doxia">
      <item name="What is Doxia?" href="index.html"/>
      <item name="Overview" href="overview.html"/>
      <item name="Downloads" href="downloads.html"/>
      <item name="FAQ" href="faq.html"/>
    </menu>

    <menu name="Documentation">
      <item name="Format References" href="references/index.html" collapse="true">
        <item name="Apt Format" href="references/apt-format.html" collapse="true">
          <item name="Doxia Apt Enhancements" href="references/doxia-apt.html"/>
        </item>
        <item name="FML Format" href="references/fml-format.html"/>
        <item name="Xdoc Format" href="references/xdoc-format.html"/>
      </item>
      <item name="Doxia Modules Guide" href="modules/index.html"/>
      <item name="Doxia Macros Guide" href="macros/index.html"/>
      <item name="Writing Books" href="book/index.html"/>
      <!-- MSITE-333: remove double-amp when fixed -->
      <item name="Issues &amp;amp; Gotchas" href="issues/index.html"/>
      <item name="External Resources" href="resources.html"/>
    </menu>

    <menu name="Developer Docs">
      <item name="Developer Centre" href="developers/index.html" collapse="true">
        <item name="Create a Doxia Module" href="developers/modules.html"/>
        <item name="Create a Doxia Macro" href="developers/macros.html"/>
        <item name="Using the Sink API" href="developers/sink.html"/>
        <item name="Doxia base" href="doxia/index.html"/>
        <item name="Doxia Sitetools" href="doxia-sitetools/index.html"/>
      </item>
      <item name="Doxia Tools" href="doxia-tools/index.html"/>
    </menu>

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