<?xml version="1.0" encoding="UTF-8"?>

<!--

    Copyright 2006 The Apache Software Foundation

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


<document>

<properties>
<title>Documentation</title>
<author email="sebawagner@apache.org">
 Podling Documentation Team</author>
</properties>

<body>
<section name="OpenMeetings Documentation">

<p>
Wiki is to be linked here, coming soon ...

<!-- ***************** TBD **************************  -->
<!-- ***************** TBD **************************  -->
<!-- ***************** TBD **************************  -->

</p>

</section>

</body>

</document>

