<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
 * $Id: site.xml 1081442 2011-03-14 16:21:08Z apetrelli $
 *
 * 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="Apache - Request Microframework">
    <bannerLeft>
        <name>Apache Software Foundation</name>
        <src>http://www.apache.org/images/asf-logo.gif</src>
        <href>http://www.apache.org</href>
    </bannerLeft>
    <bannerRight>
        <name>Apache Tiles&#8482;</name>
        <src>http://tiles.apache.org/images/logo.png</src>
        <href>http://tiles.apache.org</href>
    </bannerRight>
    <body>

        <links>
            <item name="Apache" href="http://www.apache.org" />
            <item name="Tiles" href="http://tiles.apache.org" />
        </links>


        <menu name="Apache Tiles&#8482;">
            <item
                   name="Tiles Home"
                   href="../../index.html"/>
            <item
                   name="Request Microframework"
                   href="../index.html"/>
        </menu>

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

    </body>
</project>
