<?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.
-->
<!--+
    | Find usage details at http://maven.apache.org/plugins/maven-changes-plugin/usage.html
    |
    | @version $Id$
    +-->
    <document>
      <body>
        <release version="1.0.0-M1" date="2007-??-??" description="unreleased">    
          <action dev="reinhard" type="add">
            Initial creation.
          </action>      
        </release>
      </body>
    </document>
    