<?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.  
-->
<document>

 <properties>
  <title>Overview</title>
  <author email="jsieve-dev@jakarta.apache.org">jSieve Project</author>
 </properties>

<body>
<section name="What is jSieve?">
<p>
jSieve is a Java implementation of the Sieve mail filtering language defined by 
<a href='http://www.rfc-editor.org/rfc/rfc3028.txt'>RFC 3028</a>. jSieve is implemented 
as a language processor that can be plugged into any internet mail application to add 
Sieve support.
</p>
<subsection name='Sieve Mailets'>
<p>
This library contains mailets which allow Sieve filters to be easily fitting
into any enterprise mail server supporting the 
<a href='http://james.apache.org/mailet' rel='tag'>Mailet API</a>. This library
supplies Sieve mail filtering support for James.
</p><p>
For more details, see the <a href='mailet-report.html'>Catelog</a>.
</p>
</subsection>
</section>
</body>
</document>
