<?xml version="1.0"?>
<!--
  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">
  <map:components>
    <map:serializers default="html">
      <map:serializer name="rss091" mime-type="text/xml" src="org.apache.cocoon.serialization.XMLSerializer">
        <doctype-public>-//Netscape Communications//DTD RSS 0.91//EN</doctype-public>
        <doctype-system>http://my.netscape.com/publish/formats/rss-0.91.dtd</doctype-system>
        <encoding>ISO-8859-1</encoding>
      </map:serializer>
    </map:serializers>
  </map:components>
  <map:pipelines>
    <map:pipeline>
      <map:match pattern="**changes.rss">
        <map:aggregate element="agg">
          <map:part src="cocoon://skinconf.xml"/>
          <map:part src="{lm:project.status}"/>
        </map:aggregate>
        <map:transform src="{lm:projectInfo.transform.changes.rss}">
          <map:parameter name="changes-url" value="{properties:projectInfo.project.url}/changes.html"/>
          <map:parameter name="project-name" value="{properties:projectInfo.project.fullname}"/>
        </map:transform>
        <map:serialize type="rss091" />
      </map:match>
      <map:match type="regexp" pattern="^(.*?)([^/]*)changes_(.*).rss$">
        <map:aggregate element="agg">
          <map:part src="cocoon://skinconf.xml"/>
          <map:part src="{lm:project.status}"/>
        </map:aggregate>
        <map:transform src="{lm:projectInfo.transform.changes.rss}">
          <map:parameter name="versionNumber" value="{3}"/>
          <map:parameter name="changes-url" value="{properties:projectInfo.project.url}"/>
          <map:parameter name="project-name" value="{properties:project.name}"/>
        </map:transform>
        <map:serialize type="rss091" />
      </map:match>
    </map:pipeline>
  </map:pipelines>
</map:sitemap>
