On Fri, Oct 14, 2005 at 02:05:02PM +0100, Alexey Melnikov wrote:
How about the following:
An implementation MAY enforce
other semantical restrictions on URIs, for example an SMS URI can only
contain phone numbers in a particular geographical reason. Violation
of such semantical restrictions MUST also cause an error.
Semantical restrictions is exactly the term I couldn't put into words!
Is the MUST useful? If an implementation wants to ignore violating such
restrictions, it could just pretend there are no restrictions and let
things fail silently, hence it it not forced to treat them as error,
despite the MUST.
The above would make sense if absence of errors would guarantee delivery
of a notification (making notify transactional), but unless semantic
validity could be checked completely, I see no way to offer that.
Compared to the original specification that enforced errors for
syntactically invalid URLs and allowed them for nothing else, I would
like to additionally allow generating errors upon semantic restrictions,
but not enforce them.
While saying that, we have a similar situation with "redirect".
Would anybody object if "redirect" caused an error for syntactically
valid addresses that violate e.g. a site policy of not allowing mail to
be forwarded to external addresses? Some sites may check that in the
central mail hub, thus not allowing to detect the error inside Sieve
and ignoring it.
Kind of like: If I can detect a violation, I flag an error, but if I
can't until it is too late, I ignore it.
Michael