[Top] [All Lists]

[sieve] Notify (RFC 5435) questions

2009-09-28 10:37:02

Section 3.4. Notify Tag ":importance" says that the :importance tag
specifies a numerical value from one through three as a string. However,
it doesn't specify what happens when a script fails to comply with that,
i.e. the string specifies a different number, or not a number at all
(the latter could have been avoided if one had specified the parameter
of :importance as a number to begin with).

This doesn't fit with the ductus of other parts of the spec (such as
:from, or the parameter method) where error handling or ignoring things
(e.g. from values that are syntactically correct but not allowed for the
script owner for policy reasons) are clearly specified.

And it's not "justified" by being delegated to method specific handling,
as RFC 5435 itself *does* specify it to be the string representation of
a number from one through three.

By the way, the ABNF suggests that the number has to be given literally,
but the specification doesn't spell it out whether that really implies
the :importance parameter has to be a *constant* string in the sense of
the variables extension.

  1. Is the parameter of :importance a *constant* string (as the ABNF
     suggests) or can it expand variables (as the variables extension
     says all strings do if one uses it unless *explicitly* told to be
  2. If the string of the parameter doesn't specify a number at all,
     is that an error or is the parameter silently ignored and the
     default importance ("2") used?
  3. If the string of the parameter *does* specify a number, but one
     out of range, is that an error or is it ignored? In the latter
     case, is the default importance used or is the number clipped
     to the range (from below 1 to 1, from above 3 to 3)?
  4. Are leading zeroes tolerated as the *text* suggests "a numeric
     value represented as a string" or not, as the ABNF suggests,
     [":importance" <"1" / "2" / "3">]?

Kind regards,

sieve mailing list

<Prev in Thread] Current Thread [Next in Thread>