<?xml version="1.0" encoding="iso-8859-1"?>
<!--
 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.
-->
<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></properties>
  <title>Mailing Lists</title>
  <body>

    <section name="Mailing Lists"></section>
    <subsection name="MRQL User List"></subsection>
    <p>
    If you'd like to use MRQL, please subscribe to the MRQL user mailing list.<br /> 
    The MRQL user mailing list is : 
    <a href="mailto:user@mrql.incubator.apache.org">user@mrql.incubator.apache.org</a>.
    </p>
    <ul>
    <li><a href="mailto:user-subscribe@mrql.incubator.apache.org">Subscribe to List</a></li>
    <li><a href="mailto:user-unsubscribe@mrql.incubator.apache.org">Unsubscribe from List</a></li>
    </ul>

    <subsection name="MRQL Developer List"></subsection>
    <p>
    If you'd like to contribute to MRQL, please subscribe to the MRQL developer mailing list.<br /> 
    The MRQL developer mailing list is : 
    <a href="mailto:dev@mrql.incubator.apache.org">dev@mrql.incubator.apache.org</a>.
    </p>
    <ul>
    <li><a href="mailto:dev-subscribe@mrql.incubator.apache.org">Subscribe to List</a></li>
    <li><a href="mailto:dev-unsubscribe@mrql.incubator.apache.org">Unsubscribe from List</a></li>
    </ul>
    
    <subsection name="MRQL Commit List"></subsection>
    <p>
    If you'd like to see changes made in MRQL's version control system then subscribe 
    to the MRQL commit mailing list.<br />
    The MRQL commit mailing list is : 
    <a href="mailto:commits@mrql.incubator.apache.org">commits@mrql.incubator.apache.org</a>.
    </p>
    <ul>
    <li><a href="mailto:commits-subscribe@mrql.incubator.apache.org">Subscribe to List</a></li>
    <li><a href="mailto:commits-unsubscribe@mrql.incubator.apache.org">Unsubscribe from List</a></li>
    </ul>

  </body>
</document>
