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

<!-- $Id: $ -->

<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
  
  <map:components>
    <map:matchers default="wildcard">
      <map:matcher logger="sitemap.matcher.usecase" name="action"
          src="org.apache.cocoon.matching.WildcardRequestParameterMatcher">
        <parameter-name>lenya.action</parameter-name>
      </map:matcher>
    </map:matchers>
    <map:transformers default="xslt">
      <map:transformer logger="lenya.sitemap.transformer.uuid2url" name="uuid2url-sitetree"
        src="org.apache.lenya.cms.cocoon.transformation.UuidToUrlTransformer">
        <urls type="relative"/>
        <transform namespace="http://apache.org/cocoon/lenya/navigation/1.0" element="node" attribute="href"/>
      </map:transformer>
      <map:transformer logger="lenya.sitemap.transformer.proxy" name="proxy-sitetree"
        src="org.apache.lenya.cms.cocoon.transformation.ProxyTransformer">
        <transform namespace="http://apache.org/cocoon/lenya/navigation/1.0" element="node" attribute="href"/>
      </map:transformer>
    </map:transformers>
  </map:components>
  
  <map:pipelines>
      
    <!-- Introspection -->
    <map:pipeline type="noncaching">
      
      <map:match type="action" pattern="introspect">
        <map:generate src="context://lenya/content/util/empty.xml"/>
        <map:transform src="fallback://lenya/modules/neutron/xslt/introspection.xsl">
          <map:parameter name="uri" value="{proxy:{request:requestURI}}"/>
        </map:transform>
        <map:serialize type="xml"/>
      </map:match>
      
      <map:match type="action" pattern="sitetree">
        <map:match pattern="*/*/**">
          <map:generate src="cocoon://modules/sitetree/{1}/{2}/sitetree.xml"/>
          <map:transform src="fallback://lenya/modules/sitetree/xslt/navigation/sitetree2nav.xsl" label="navtree">
            <map:parameter name="chosenlanguage" value="{request-param:language}"/>
            <map:parameter name="defaultlanguage" value="{page-envelope:default-language}"/>
            <map:parameter name="extension" value="html"/>
          </map:transform>
          <map:transform type="i18n">
            <map:parameter name="locale" value="{request:locale}"/>
          </map:transform>
          <map:transform type="uuid2url-sitetree"/>
          <map:transform type="proxy-sitetree"/>
          <map:transform src="xslt/sitetree.xsl"/>
          <map:serialize type="xml"/>
        </map:match>
      </map:match>
      
      <!-- document -->
      <map:match pattern="document">
        <map:generate src="lenya-document:{page-envelope:document-uuid}"/>
        <map:transform src="fallback://lenya/modules/neutron/xslt/addCss.xsl">
          <map:parameter name="css" value="{proxy:/{page-envelope:publication-id}/{page-envelope:area}/css/page.css}"/>
        </map:transform>
        <map:serialize type="xml"/>
      </map:match>
      
    </map:pipeline>
  
  </map:pipelines>

</map:sitemap>
