<?xml version="1.0" encoding="UTF-8"?>
<!--
   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 xmlns="http://maven.apache.org/XDOC/2.0"
		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">

	<properties>
		<title>Our Users</title>
		<author email="dev@openmeetings.apache.org">Apache OpenMeetings Team</author>
	</properties>

	<body>
		<section name="List companies/institutions using OpenMeetings">
			<p>If you also want to get listed, please write to <a href="mailing-lists.html">user@/dev@ mailing list</a> (you need to subscribe first)<br/>
			 with subject "Add entry in 'Our Users' list". <br/>
			 And following information in the body: company/institution|city|country|type.'</p>
			<table>
				<tr>
					<th> company/institution </th>
					<th> city </th>
					<th> country </th>
					<th> type </th>
				</tr>
				<tr>
					<td> Beuth Hochschule für Technik </td>
					<td> Berlin </td>
					<td> Germany </td>
					<td> edu </td>
				</tr>
				<tr>
					<td> Pädgogisches Landesinstitut  RLP </td>
					<td> Speyer </td>
					<td> Germany </td>
					<td> edu </td>
				</tr>
				<tr>
					<td> Schulnetz Koblenz </td>
					<td> Koblenz </td>
					<td> Germany </td>
					<td> edu </td>
				</tr>
				<tr>
					<td> VCRP - Virtueller Campus Rheinland Pfalz </td>
					<td> Kaiserslautern </td>
					<td> Germany </td>
					<td> edu </td>
				</tr>
			</table>
		</section>
	</body>
</document>
