RFC 3431 (rfc3431) - Page 2 of 8


Sieve Extension: Relational Tests



Alternative Format: Original Text Document



RFC 3431           Sieve Extension: Relational Tests       December 2002


   The sieve script can also determine the number of fields in the
   header, or the number of addresses in a recipient field.  For
   example:  are there more than 5 addresses in the to and cc fields.

2 Conventions used in this document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in BCP 14, RFC 2119.

   Conventions for notations are as in [SIEVE] section 1.1, including
   the use of [KEYWORDS] and "Syntax:" label for the definition of
   action and tagged arguments syntax, and the use of [ABNF].

   The capability string associated with extension defined in this
   document is "relational".

3 Comparators

   This document does not define any comparators or exempt any
   comparators from the require clause.  Any comparator used, other than
   "i;octet" and "i;ascii-casemap", MUST be declared a require clause as
   defined in [SIEVE].

   The "i;ascii-numeric" comparator, as defined in [ACAP], MUST be
   supported for any implementation of this extension.  The comparator
   "i;ascii-numeric" MUST support at least 32 bit unsigned integers.

   Larger integers MAY be supported.  Note: the "i;ascii-numeric"
   comparator does not support negative numbers.

4 Match Type

   This document defines two new match types.  They are the VALUE match
   type and the COUNT match type.

     The syntax is:

        MATCH-TYPE =/ COUNT / VALUE

        COUNT = ":count" relational-match

        VALUE = ":value" relational-match

        relational-match = DQUOTE ( "gt" / "ge" / "lt"
                                    / "le" / "eq" / "ne" ) DQUOTE





Segmuller                   Standards Track