aboutsummaryrefslogblamecommitdiffstats
path: root/mail/vfoldertypes.xml.in
blob: 51460c7a960df28c8d6504c5bbcd73b7be15e2c6 (plain) (tree)
1
2
3
4
5
6
7
8



                     
                         

                                               
                                 


                                                                   
                                         


                                                                         
                           


                                                                  
                               


                                                                        
                                 




                                                         
                                         




                                                               
                               




                                                       
                                       




                                                             
                                                           


                 
                              

                                                  
                              





                                                            
                                      






                                                                
                        





                                                           
                            






                                                    
                                 





                                                               
                                         






                                                        
                               





                                                             
                                       






                                                      
                                                               

        
                     
                      

                                                  
                              




                                                       
                                      




                                                             
                        




                                                      
                            




                                                            
                                 




                                                          
                                         




                                                                
                               




                                                        
                                       




                                                              
                                 




                                                      
                                         




                                                            
                                                               

        
                 
                      

                                                  
                              




                                                       
                                      




                                                             
                        




                                                      
                            




                                                            
                                 




                                                          
                                         




                                                                
                               




                                                        
                                       




                                                              
                                 




                                                      
                                         




                                                            
                                                               


                  
                       

                                                  
                              




                                                        
                                      




                                                              
                        




                                                       
                            




                                                             
                                 




                                                           
                                         




                                                                 
                               




                                                         
                                       




                                                               
                                 




                                                       
                                         




                                                             
                                                               

        
                       
                                        

                                                  
                              


                                                            
                                                            


                                 
                                      



                                                               
                                                                


                       
                        


                                                           
                                                           


                           
                            



                                                   
                                                    


                                
                                 


                                                               
                                                               


                                    
                                         



                                                       
                                                        


                              
                               


                                                             
                                                             


                                  
                                       



                                                     
                                                      


             
                                                               


                      
                           

                                                
                              




                                                          
                                      



                                                                
                              
                               




                                                           
                                         



                                                                 
                       
                        




                                                         
                            




                                                               
                                 




                                                             
                                         




                                                                   
                               




                                                           
                                       






                                                                 

                     
                                   
                                                                 

                                               
                              




                                                             
                                      



                                                                   
                              
                               




                                                              
                                         



                                                                    
                       
                        




                                                            
                            




                                                                  
                                 




                                                                
                                         




                                                                      
                               




                                                              
                                       




                                                                    
                            




                                                   
                                    




                                                         
                                 




                                                            
                                         







                                                                  
                        
                              

                                               
                              




                                                
                                      




                                                      
                               




                                                 
                                         




                                                       
                        




                                               
                            




                                                     
                                 




                                                   
                                         




                                                         
                               




                                                 
                                       




                                                       
                                 




                                               
                                         







                                                     
                   
                                

                                             
                              




                                 
                                      




                                     
                                                         

                   
                              



                                   
                            

                                                 
                       




                                                
                           




                                                      
                              




                                                   
                             








                                                   
                                

                                                 
                       




                                                    
                           




                                                          
                              




                                                       
                             








                                                       
                        

                                             
                       
                                                

                          
                           
                                                

            
                                         
                                                       
          


                    
                        

                                             
                       




                                                              
                           




                                                                    
                                    




                                                                 
                                 








                                                                 
                            

                                            
                                    




                                              
                                 








                                              
                         

                                             
                       




                                      
                           






                                            
                               

                           
                            

                         
                          

                           
                              

                        
                         

                        
                         




                        
                            

                                             
                               




                                                    
                                   






                                              
                           
                               

                                                 
                           




                                                         
                               






                                                   
                          
                              

                                             
                          




                                            
                                 







                                                  
                               

                                              
                           


                                                                          
                               


                                                                                
                                 


                                                                           
                                         


                                                                                 
                                                          

        
                    
                              

                                             
                                   




                                                    
                                 








                                             
                                   

                                                   
                       




                                              
                           







                                                    
                     
                                
            
                     


             

                    
<?xml version="1.0"?>
<filterdescription>
<partset>
 <part name="sender">
  <_title>Sender</_title>
   <input type="optionlist" name="sender-type">
    <option value="contains">
        <_title>contains</_title>
    <code>(match-all (header-contains "From" ${sender}))</code>
    </option>
    <option value="not contains">
        <_title>does not contain</_title>
        <code>(match-all (not (header-contains "From" ${sender})))</code>
    </option>
    <option value="is">
        <_title>is</_title>
    <code>(match-all (header-matches "From" ${sender}))</code>
    </option>
    <option value="is not">
        <_title>is not</_title>
        <code>(match-all (not (header-matches "From" ${sender})))</code>
    </option>
    <option value="starts with">
     <_title>starts with</_title>
     <code>
        (match-all (header-starts-with "From" ${sender}))
     </code>
    </option>
    <option value="not starts with">
     <_title>does not start with</_title>
     <code>
        (match-all (not (header-starts-with "From" ${sender})))
     </code>
    </option>
    <option value="ends with">
     <_title>ends with</_title>
     <code>
        (match-all (header-ends-with "From" ${sender}))
     </code>
    </option>
    <option value="not ends with">
     <_title>does not end with</_title>
     <code>
        (match-all (not (header-ends-with "From" ${sender})))
     </code>
    </option>
   </input>
   <input type="string" name="sender" allow-empty="false"/>
 </part>

 <part name="to">
   <_title>Recipients</_title>
   <input type="optionlist" name="recipient-type">
    <option value="contains">
     <_title>contains</_title>
     <code>
    (match-all (or (header-contains "To" ${recipient})
                   (header-contains "Cc" ${recipient})))
     </code>
    </option>
    <option value="not contains">
     <_title>does not contain</_title>
     <code>
    (match-all (not (or
                          (header-contains "To" ${recipient})
                      (header-contains "Cc" ${recipient}))))
     </code>
    </option>
    <option value="is">
     <_title>is</_title>
     <code>
    (match-all (or (header-matches "To" ${recipient})
                   (header-matches "Cc" ${recipient})))
     </code>
    </option>
    <option value="is not">
     <_title>is not</_title>
     <code>
    (match-all (not (or
               (header-matches "To" ${recipient})
           (header-matches "Cc" ${recipient}))))
     </code>
    </option>
    <option value="starts with">
     <_title>starts with</_title>
     <code>
        (match-all (or (header-starts-with "To" ${recipient})
                   (header-starts-with "Cc" ${recipient})))
     </code>
    </option>
    <option value="not starts with">
     <_title>does not start with</_title>
     <code>
        (match-all (not (or
               (header-starts-with "To" ${recipient})
           (header-starts-with "Cc" ${recipient}))))
     </code>
    </option>
    <option value="ends with">
     <_title>ends with</_title>
     <code>
        (match-all (or (header-ends-with "To" ${recipient})
                   (header-ends-with "Cc" ${recipient})))
     </code>
    </option>
    <option value="not ends with">
     <_title>does not end with</_title>
     <code>
        (match-all (not (or
               (header-ends-with "To" ${recipient})
           (header-ends-with "Cc" ${recipient}))))
     </code>
    </option>
   </input>
   <input type="address" name="recipient" allow-empty="false"/>
 </part>

 <part name="toonly">
   <_title>To</_title>
   <input type="optionlist" name="recipient-type">
    <option value="contains">
     <_title>contains</_title>
     <code>
    (match-all (header-contains "To" ${recipient}))
     </code>
    </option>
    <option value="not contains">
     <_title>does not contain</_title>
     <code>
    (match-all (not (header-contains "To" ${recipient})))
     </code>
    </option>
    <option value="is">
     <_title>is</_title>
     <code>
    (match-all (header-matches "To" ${recipient}))
     </code>
    </option>
    <option value="is not">
     <_title>is not</_title>
     <code>
    (match-all (not (header-matches "To" ${recipient})))
     </code>
    </option>
    <option value="starts with">
     <_title>starts with</_title>
     <code>
        (match-all (header-starts-with "To" ${recipient}))
     </code>
    </option>
    <option value="not starts with">
     <_title>does not start with</_title>
     <code>
        (match-all (not (header-starts-with "To" ${recipient})))
     </code>
    </option>
    <option value="ends with">
     <_title>ends with</_title>
     <code>
        (match-all (header-ends-with "To" ${recipient}))
     </code>
    </option>
    <option value="not ends with">
     <_title>does not end with</_title>
     <code>
        (match-all (not (header-ends-with "To" ${recipient})))
     </code>
    </option>
    <option value="matches soundex">
     <_title>sounds like</_title>
     <code>
    (match-all (header-soundex "To" ${recipient}))
     </code>
    </option>
    <option value="not match soundex">
     <_title>does not sound like</_title>
     <code>
    (match-all (not (header-soundex "To" ${recipient})))
     </code>
    </option>
   </input>
   <input type="address" name="recipient" allow-empty="false"/>
 </part>

 <part name="cc">
   <_title>CC</_title>
   <input type="optionlist" name="recipient-type">
    <option value="contains">
     <_title>contains</_title>
     <code>
    (match-all (header-contains "Cc" ${recipient}))
     </code>
    </option>
    <option value="not contains">
     <_title>does not contain</_title>
     <code>
    (match-all (not (header-contains "Cc" ${recipient})))
     </code>
    </option>
    <option value="is">
     <_title>is</_title>
     <code>
    (match-all (header-matches "Cc" ${recipient}))
     </code>
    </option>
    <option value="is not">
     <_title>is not</_title>
     <code>
    (match-all (not (header-matches "Cc" ${recipient})))
     </code>
    </option>
    <option value="starts with">
     <_title>starts with</_title>
     <code>
        (match-all (header-starts-with "Cc" ${recipient}))
     </code>
    </option>
    <option value="not starts with">
     <_title>does not start with</_title>
     <code>
        (match-all (not (header-starts-with "Cc" ${recipient})))
     </code>
    </option>
    <option value="ends with">
     <_title>ends with</_title>
     <code>
        (match-all (header-ends-with "Cc" ${recipient}))
     </code>
    </option>
    <option value="not ends with">
     <_title>does not end with</_title>
     <code>
        (match-all (not (header-ends-with "Cc" ${recipient})))
     </code>
    </option>
    <option value="matches soundex">
     <_title>sounds like</_title>
     <code>
    (match-all (header-soundex "Cc" ${recipient}))
     </code>
    </option>
    <option value="not match soundex">
     <_title>does not sound like</_title>
     <code>
    (match-all (not (header-soundex "Cc" ${recipient})))
     </code>
    </option>
   </input>
   <input type="address" name="recipient" allow-empty="false"/>
 </part>

 <part name="bcc">
   <_title>BCC</_title>
   <input type="optionlist" name="recipient-type">
    <option value="contains">
     <_title>contains</_title>
     <code>
    (match-all (header-contains "Bcc" ${recipient}))
     </code>
    </option>
    <option value="not contains">
     <_title>does not contain</_title>
     <code>
    (match-all (not (header-contains "Bcc" ${recipient})))
     </code>
    </option>
    <option value="is">
     <_title>is</_title>
     <code>
    (match-all (header-matches "Bcc" ${recipient}))
     </code>
    </option>
    <option value="is not">
     <_title>is not</_title>
     <code>
    (match-all (not (header-matches "Bcc" ${recipient})))
     </code>
    </option>
    <option value="starts with">
     <_title>starts with</_title>
     <code>
        (match-all (header-starts-with "Bcc" ${recipient}))
     </code>
    </option>
    <option value="not starts with">
     <_title>does not start with</_title>
     <code>
        (match-all (not (header-starts-with "Bcc" ${recipient})))
     </code>
    </option>
    <option value="ends with">
     <_title>ends with</_title>
     <code>
        (match-all (header-ends-with "Bcc" ${recipient}))
     </code>
    </option>
    <option value="not ends with">
     <_title>does not end with</_title>
     <code>
        (match-all (not (header-ends-with "Bcc" ${recipient})))
     </code>
    </option>
    <option value="matches soundex">
     <_title>sounds like</_title>
     <code>
    (match-all (header-soundex "Bcc" ${recipient}))
     </code>
    </option>
    <option value="not match soundex">
     <_title>does not sound like</_title>
     <code>
    (match-all (not (header-soundex "Bcc" ${recipient})))
     </code>
    </option>
   </input>
   <input type="address" name="recipient" allow-empty="false"/>
 </part>

 <part name="senderto">
   <_title>Sender or Recipients</_title>
   <input type="optionlist" name="recipient-type">
    <option value="contains">
     <_title>contains</_title>
     <code>
    (match-all (or (header-contains "From" ${recipient})
                   (header-contains "To" ${recipient})
                   (header-contains "Cc" ${recipient})))
     </code>
    </option>
    <option value="not contains">
     <_title>does not contain</_title>
     <code>
    (match-all (not (or
                          (header-contains "From" ${recipient})
                          (header-contains "To" ${recipient})
                          (header-contains "Cc" ${recipient}))))
     </code>
    </option>
    <option value="is">
     <_title>is</_title>
     <code>
    (match-all (or (header-matches "From" ${recipient})
                   (header-matches "To" ${recipient})
                   (header-matches "Cc" ${recipient})))
     </code>
    </option>
    <option value="is not">
     <_title>is not</_title>
     <code>
    (match-all (not (or
               (header-matches "From" ${recipient})
               (header-matches "To" ${recipient})
               (header-matches "Cc" ${recipient}))))
     </code>
    </option>
    <option value="starts with">
     <_title>starts with</_title>
     <code>
        (match-all (or (header-starts-with "From" ${recipient})
                   (header-starts-with "To" ${recipient})
                   (header-starts-with "Cc" ${recipient})))
     </code>
    </option>
    <option value="not starts with">
     <_title>does not start with</_title>
     <code>
        (match-all (not (or
               (header-starts-with "From" ${recipient})
               (header-starts-with "To" ${recipient})
               (header-starts-with "Cc" ${recipient}))))
     </code>
    </option>
    <option value="ends with">
     <_title>ends with</_title>
     <code>
        (match-all (or (header-ends-with "From" ${recipient})
                   (header-ends-with "To" ${recipient})
                   (header-ends-with "Cc" ${recipient})))
     </code>
    </option>
    <option value="not ends with">
     <_title>does not end with</_title>
     <code>
        (match-all (not (or
               (header-ends-with "From" ${recipient})
               (header-ends-with "To" ${recipient})
               (header-ends-with "Cc" ${recipient}))))
     </code>
    </option>
   </input>
   <input type="address" name="recipient" allow-empty="false"/>
 </part>

 <part name="subject">
   <_title>Subject</_title>
   <input type="optionlist" name="subject-type">
    <option value="contains">
     <_title>contains</_title>
     <code>
    (match-all (header-contains "Subject" ${subject}))
     </code>
    </option>
    <option value="not contains">
     <_title>does not contain</_title>
     <code>
    (match-all (not (header-contains "Subject" ${subject})))
     </code>
    </option>
    <option value="has-words">
     <_title>has words</_title>
     <code>
    (match-all (header-has-words "Subject" ${subject}))
     </code>
    </option>
    <option value="not has-words">
     <_title>does not have words</_title>
     <code>
    (match-all (not (header-has-words "Subject" ${subject})))
     </code>
    </option>
    <option value="is">
     <_title>is</_title>
     <code>
    (match-all (header-matches "Subject" ${subject}))
     </code>
    </option>
    <option value="is not">
     <_title>is not</_title>
     <code>
    (match-all (not (header-matches "Subject" ${subject})))
     </code>
    </option>
    <option value="starts with">
     <_title>starts with</_title>
     <code>
    (match-all (header-starts-with "Subject" ${subject}))
     </code>
    </option>
    <option value="not starts with">
     <_title>does not start with</_title>
     <code>
    (match-all (not (header-starts-with "Subject" ${subject})))
     </code>
    </option>
    <option value="ends with">
     <_title>ends with</_title>
     <code>
    (match-all (header-ends-with "Subject" ${subject}))
     </code>
    </option>
    <option value="not ends with">
     <_title>does not end with</_title>
     <code>
    (match-all (not (header-ends-with "Subject" ${subject})))
     </code>
    </option>
   </input>
   <input type="string" name="subject"/>
 </part>

 <part name="header">
   <_title>Specific header</_title>
   <input type="string" name="header-field" allow-empty="false"/>
   <input type="optionlist" name="header-type">
    <option value="contains">
     <_title>contains</_title>
     <code>
    (match-all (header-contains ${header-field} ${word}))
     </code>
    </option>
    <option value="not contains">
     <_title>does not contain</_title>
     <code>
    (match-all (not (header-contains ${header-field} ${word})))
     </code>
    </option>
    <option value="has-words">
     <_title>has words</_title>
     <code>
    (match-all (header-has-words ${header-field} ${word}))
     </code>
    </option>
    <option value="not has-words">
     <_title>does not have words</_title>
     <code>
    (match-all (not (header-has-words ${header-field} ${word})))
     </code>
    </option>
    <option value="is">
     <_title>is</_title>
     <code>
    (match-all (header-matches ${header-field} ${word}))
     </code>
    </option>
    <option value="is not">
     <_title>is not</_title>
     <code>
    (match-all (not (header-matches ${header-field} ${word})))
     </code>
    </option>
    <option value="starts with">
     <_title>starts with</_title>
     <code>
    (match-all (header-starts-with ${header-field} ${word}))
     </code>
    </option>
    <option value="not starts with">
     <_title>does not start with</_title>
     <code>
    (match-all (not (header-starts-with ${header-field} ${word})))
     </code>
    </option>
    <option value="ends with">
     <_title>ends with</_title>
     <code>
    (match-all (header-ends-with ${header-field} ${word}))
     </code>
    </option>
    <option value="not ends with">
     <_title>does not end with</_title>
     <code>
    (match-all (not (header-ends-with ${header-field} ${word})))
     </code>
    </option>
    <option value="exists">
     <_title>exists</_title>
     <code>
    (match-all (header-exists ${header-field}))
     </code>
    </option>
    <option value="not exists">
     <_title>does not exist</_title>
     <code>
    (match-all (not (header-exists ${header-field})))
     </code>
    </option>
    <option value="matches soundex">
     <_title>sounds like</_title>
     <code>
        (match-all (header-soundex ${header-field} ${word}))
     </code>
    </option>
    <option value="not match soundex">
     <_title>does not sound like</_title>
     <code>
        (match-all (not (header-soundex ${header-field} ${word})))
     </code>
    </option>
   </input>
   <input type="string" name="word"/>
 </part>

 <part name="anyheader">
   <_title>Any header</_title>
   <input type="optionlist" name="header-type">
    <option value="contains">
     <_title>contains</_title>
     <code>
    (match-all (header-contains "" ${word}))
     </code>
    </option>
    <option value="not contains">
     <_title>does not contain</_title>
     <code>
    (match-all (not (header-contains "" ${word})))
     </code>
    </option>
    <option value="has-words">
     <_title>has words</_title>
     <code>
    (match-all (header-has-words "" ${word}))
     </code>
    </option>
    <option value="not has-words">
     <_title>does not have words</_title>
     <code>
    (match-all (not (header-has-words "" ${word})))
     </code>
    </option>
    <option value="is">
     <_title>is</_title>
     <code>
    (match-all (header-matches "" ${word}))
     </code>
    </option>
    <option value="is not">
     <_title>is not</_title>
     <code>
    (match-all (not (header-matches "" ${word})))
     </code>
    </option>
    <option value="starts with">
     <_title>starts with</_title>
     <code>
    (match-all (header-starts-with "" ${word}))
     </code>
    </option>
    <option value="not starts with">
     <_title>does not start with</_title>
     <code>
    (match-all (not (header-starts-with "" ${word})))
     </code>
    </option>
    <option value="ends with">
     <_title>ends with</_title>
     <code>
    (match-all (header-ends-with "" ${word}))
     </code>
    </option>
    <option value="not ends with">
     <_title>does not end with</_title>
     <code>
    (match-all (not (header-ends-with "" ${word})))
     </code>
    </option>
    <option value="matches soundex">
     <_title>sounds like</_title>
     <code>
        (match-all (header-soundex "" ${word}))
     </code>
    </option>
    <option value="not match soundex">
     <_title>does not sound like</_title>
     <code>
        (match-all (not (header-soundex "" ${word})))
     </code>
    </option>
   </input>
   <input type="string" name="word"/>
 </part>

 <part name="body">
   <_title>Message Body</_title>
   <input type="optionlist" name="body-type">
    <option value="contains">
     <_title>contains</_title>
     <code>
    (body-contains ${word})
     </code>
    </option>
    <option value="not contains">
     <_title>does not contain</_title>
     <code>
    (not (body-contains ${word}))
     </code>
    </option>
   </input>
   <input type="string" name="word" allow-empty="false"/>
 </part>
 <part name="sexp">
   <_title>Expression</_title>
   <input type="code" name="code"/>
 </part>

 <part name="sent-date">
  <_title>Date sent</_title>
  <input type="optionlist" name="date-spec-type">
   <option value="is">
    <_title>is</_title>
    <code>
       (match-all (= (get-sent-date) ${versus}))
    </code>
   </option>
   <option value="is-not">
    <_title>is not</_title>
    <code>
       (match-all (not (= (get-sent-date) ${versus})))
    </code>
   </option>
   <option value="before">
    <_title>is before</_title>
    <code>
       (match-all (&lt; (get-sent-date) ${versus}))
    </code>
   </option>
   <option value="after">
    <_title>is after</_title>
    <code>
       (match-all (&gt; (get-sent-date) ${versus}))
    </code>
   </option>
  </input>    
  <input type="datespec" name="versus"/>
 </part>

 <part name="recv-date">
  <_title>Date received</_title>
  <input type="optionlist" name="date-spec-type">
   <option value="is">
    <_title>is</_title>
    <code>
       (match-all (= (get-received-date) ${versus}))
    </code>
   </option>
   <option value="is-not">
    <_title>is not</_title>
    <code>
       (match-all (not (= (get-received-date) ${versus})))
    </code>
   </option>
   <option value="before">
    <_title>is before</_title>
    <code>
       (match-all (&lt; (get-received-date) ${versus}))
    </code>
   </option>
   <option value="after">
    <_title>is after</_title>
    <code>
       (match-all (&gt; (get-received-date) ${versus}))
    </code>
   </option>
  </input>    
  <input type="datespec" name="versus"/>
 </part>

 <part name="label">
  <_title>Label</_title>
  <input type="optionlist" name="label-type">
   <option value="is">
    <_title>is</_title>
    <code func="e_mail_labels_get_filter_code"/>
   </option>
   <option value="is-not">
    <_title>is not</_title>
    <code func="e_mail_labels_get_filter_code"/>
   </option>
  </input>
  <input type="optionlist" name="versus">
     <dynamic func="e_mail_labels_get_filter_options"/>
  </input>
 </part>

 <part name="score">
  <_title>Score</_title>
  <input type="optionlist" name="score-type">
   <option value="is">
    <_title>is</_title>
    <code>
       (match-all (= (cast-int (user-tag "score")) ${versus}))
    </code>
   </option>
   <option value="is-not">
    <_title>is not</_title>
    <code>
       (match-all (not (= (cast-int (user-tag "score")) ${versus})))
    </code>
   </option>
   <option value="greater-than">
    <_title>is greater than</_title>
    <code>
       (match-all (&gt; (cast-int (user-tag "score")) ${versus}))
    </code>
   </option>
   <option value="less-than">
    <_title>is less than</_title>
    <code>
       (match-all (&lt; (cast-int (user-tag "score")) ${versus}))
    </code>
   </option>
  </input>
  <input type="score" name="versus"/>
 </part>

 <part name="size">
  <_title>Size (kB)</_title>
  <input type="optionlist" name="size-type">
   <option value="greater-than">
    <_title>is greater than</_title>
    <code>
       (match-all (&gt; (get-size) ${versus}))
    </code>
   </option>
   <option value="less-than">
    <_title>is less than</_title>
    <code>
       (match-all (&lt; (get-size) ${versus}))
    </code>
   </option>
  </input>
  <input type="integer" name="versus"/>
 </part>

 <part name="status">
  <_title>Status</_title>
  <input type="optionlist" name="match-type">
   <option value="is">
    <_title>is</_title>
    <code>
     (match-all (system-flag ${flag}))
    </code>
   </option>
   <option value="is not">
    <_title>is not</_title>
    <code>
     (match-all (not (system-flag ${flag})))
    </code>
   </option>
  </input>
  <input type="optionlist" name="flag">
   <option value="Answered">
    <_title>Replied to</_title>
   </option>
   <option value="Deleted">
    <_title>Deleted</_title>
   </option>
   <option value="Draft">
    <_title>Draft</_title>
   </option>
   <option value="Flagged">
    <_title>Important</_title>
   </option>
   <option value="Seen">
    <_title>Read</_title>
   </option>
   <option value="Junk">
    <_title>Junk</_title>
   </option>
  </input>
 </part>

 <part name="follow-up">
  <_title>Follow Up</_title>
  <input type="optionlist" name="match-type">
   <option value="is">
    <_title>is Flagged</_title>
    <code>
     (match-all (not (= (user-tag "follow-up") "")))
    </code>
   </option>
   <option value="is not">
    <_title>is not Flagged</_title>
    <code>
     (match-all (= (user-tag "follow-up") ""))
    </code>
   </option>
  </input>
 </part>

 <part name="completed-on">
  <_title>Completed On</_title>
  <input type="optionlist" name="date-spec-type">
   <option value="is set">
    <_title>is set</_title>
    <code>
       (match-all (not (= (user-tag "completed-on") "")))
    </code>
   </option>
   <option value="is not set">
    <_title>is not set</_title>
    <code>
       (match-all (= (user-tag "completed-on") ""))
    </code>
   </option>
  </input>    
 </part>

 <part name="attachments">
  <_title>Attachments</_title>
  <input type="optionlist" name="match-type">
   <option value="exist">
    <_title>Exist</_title>
    <code>
     (match-all (system-flag "Attachments"))
    </code>
   </option>
   <option value="not exist">
    <_title>Do Not Exist</_title>
    <code>
     (match-all (not (system-flag "Attachments")))
    </code>
   </option>
  </input>
 </part>

 <part name="mlist">
  <_title>Mailing list</_title>
   <input type="optionlist" name="mlist-type">
    <option value="is">
        <_title>is</_title>
        <code>(match-all (header-matches "x-camel-mlist" ${mlist}))</code>
    </option>
    <option value="is not">
        <_title>is not</_title>
        <code>(match-all (not (header-matches "x-camel-mlist" ${mlist})))</code>
    </option>
    <option value="contains">
        <_title>contains</_title>
        <code>(match-all (header-contains "x-camel-mlist" ${mlist}))</code>
    </option>
    <option value="not contains">
        <_title>does not contain</_title>
        <code>(match-all (not (header-contains "x-camel-mlist" ${mlist})))</code>
    </option>
   </input>
   <input type="string" name="mlist" allow-empty="false"/>
 </part>

 <part name="regex">
  <_title>Regex Match</_title>
  <input type="optionlist" name="match-type">
   <option value="header">
    <_title>Message Header</_title>
    <code>
       (match-all (header-full-regex ${expression}))
    </code>
   </option>
   <option value="body">
    <_title>Message Body</_title>
    <code>
       (match-all (body-regex ${expression}))
    </code>
   </option>
  </input>
  <input type="regex" name="expression"/>
 </part>

 <part name="location">
  <_title>Message Location</_title>
  <input type="optionlist" name="msglocation-type">
   <option value="is">
    <_title>is</_title>
    <code>
      (match-all (message-location ${folder}))
    </code>
   </option>
   <option value="is-not">
    <_title>is not</_title>
    <code>
      (match-all (not (message-location ${folder})))
    </code>
   </option>
  </input>
  <input type="folder-curi" name="folder"/>
 </part>

    <part name="all">
      <_title>Match All</_title>
      <code>
       (match-all #t)
      </code>
    </part>

</partset>
</filterdescription>