ietf-mta-filters
[Top] [All Lists]

Re: I-D ACTION:draft-ietf-sieve-variables-04.txt

2005-07-20 15:28:58

On Wed, 2005-07-20 at 14:54 -0700, Philip Guenther wrote:
Kjetil Torgrim Homme <kjetilho(_at_)ifi(_dot_)uio(_dot_)no> writes:
there is no ABNF in [REGEX] to refer to, and a full list will be prone
to inaccuracies.  not that I expect any changes to the syntax allowed by
it, but ...

That would be an argument for moving :quoteregex to the regex draft.  I
don't see any wording that limits support for :quotaregex to when the
regex extension is also required, so even implementations that don't
support regex will need to support :quoteregex.

ouch, you're right.  suggestion:

Modifier ":quoteregex"

        Every character with special meaning for :regex (".", "*", "?"
        etc.) is prefixed with "\" in the expansion.  This modifier is
        only available when the "regex" extension is in effect.

To me, that means that
this document needs to specify exactly what its behavior is.  (Yeah, you
could make [REGEX] a normative reference, but ... ick.)

(Hmm, what if the regex extension is revised to support not just the
normal ("extended") POSIX regexps but also the old "basic" regexps?  The
quoting rules for the two are different.  (Basic regexps are _not_ a
subset of extended regexps for functionality, though the GNU
implementations have blurred that fact by extending them both.))

:quoteregex specifically works for :regex (and the added sentence above
locks the behavioural description to [REGEX]), if an :basicregex is
introduced, there will be no quoting modifier for it.

Anyway, if :quoteregex isn't moved, then the minimal list of characters
that are escaped by :quoteregex is:

\ . [ ^ $ ( ) { * + ? |

that's just too ugly a duplication of specification.  if we need to add
that, I'd rather split out the :regex bits.

On an unrelated point, the [SIEVE] reference needs to be changed to the
replacement I-D to dodge the "no side-effects in tests" restriction.

well, 3028bis must be published first, anyway, so I'll update the
reference when its done?
-- 
Kjetil T.