(moving threads)
--On Monday, 23 April, 2007 17:05 -0600 Philip Guenther
<guenther+smtp(_at_)sendmail(_dot_)com> wrote:
On Mon, 23 Apr 2007, John C Klensin wrote:
...
Assuming that, by "the suggestion below", you meant
Reply-line = *( Reply-code "-" [ text ] CRLF ) /
Reply-code [ SP text ] CRLF
Uh, what's that "/" doing there? Shouldn't it just read:
Reply-line = *( Reply-code "-" [ text ] CRLF )
Reply-code [ SP text ] CRLF
("zero or more continuation lines, followed by a
non-continuation line")
The "/" is gone from the working draft. Thanks to you and
others.
I would also tend to just call that "Reply" instead of
"Reply-line", given that it can be multiple lines.
(I'm not trying to start the ABNF bashing early, but better to
avoid errors as close to when they occur...)
This is another example of why I'm getting cold feet about doing
a significant ABNF overhaul. The advantage of "Reply-line" over
"reply" is that the former is easily found by searching the
text, while "reply" is used all over the place. If we had an
index to productions, possibly with numbered productions, I
might feel differently about that, but we aren't going to get
that for this version (too much work and incompatible with the
tools). I think that, if this were being done to my personal
taste, we'd probably end up with
Reply-sequence = *( Reply-continuation-line ) Reply-line
Reply-continuation-line = Reply-code "-" [ text ] CRLF
Reply-line = Reply-code [ SP text ] CRLF
or even
Reply-sequence = [ Reply-continuation-lines ] Reply-line
Reply-continuation-lines = 1*Reply-continuation-line
Reply-continuation-line = Reply-code "-" [ text ] CRLF
Reply-line = Reply-code [ SP text ] CRLF
either of which I think is more clear because they are less
subtle. But, probably fortunately, we are not.
john