<?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.
-->
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">

<!-- ============================ Views ==================================== -->

  <map:views>
    <map:view name="content" from-label="content">
      <map:serialize type="xml"/>
    </map:view>

    <map:view from-label="content" name="pretty-content">
      <map:transform src="context://stylesheets/system/xml2html.xslt"/>
      <map:serialize type="html"/>
    </map:view>

    <map:view name="links" from-position="last">
      <map:serialize type="links"/>
    </map:view>
  </map:views>

<!-- =========================== Pipelines ================================= -->

  <map:pipelines>
    <map:pipeline>

      <map:match pattern="*">
        <map:generate src="{1}.xml"/>
        <!--
          - Let's have a look at the user docs:
          -
          - "[...] The purpose of the SQLTransformer is to query a
          - database and translate the result to XML. [...]"
          -->
        <map:transform type="sql">
          <map:parameter name="use-connection" value="personnel"/>
        </map:transform>
        <map:transform src="../stylesheets/sql2html.xsl">
          <map:parameter name="servletPath" value="{request:servletPath}"/>
          <map:parameter name="sitemapURI" value="{request:sitemapURI}"/>
          <map:parameter name="contextPath" value="{request:contextPath}"/>
          <map:parameter name="file" value=".xml"/>
        </map:transform>
        <map:serialize type="html"/>
      </map:match>

      <map:match pattern="">
        <map:redirect-to uri="../"/>
      </map:match>

    </map:pipeline>
  </map:pipelines>

</map:sitemap>
