[BEEPwg] Re: BEEP header & ABNF Question

Marshall T. Rose mrose@dbc.mtview.ca.us
Mon, 25 Feb 2002 13:54:23 -0800


This is a multi-part message in MIME format.

------=_NextPart_000_031E_01C1BE03.EE835BD0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

instead of "zero or more" it could say "six or seven", i suppose.

nothing is optional, however "ANS" has one more parameter than the others.

/mtr
  ----- Original Message -----
  From: Bruce_Kahn@notesdev.ibm.com
  To: BEEPwg@lists.beepcore.org ; ietf-calendar@imc.org
  Sent: Monday, February 25, 2002 12:18
  Subject: BEEP header & ABNF Question



  [Crossposting this to BEEP and CalSched WGs to insure proper coverage]

  In my attempt to be come more BEEP savy and dealing with the CAP issues I
was rereading the BEEP RFC and I think there is a small disjoin between the
text and the ABNF that folks should be aware of (or they can point out where
the corrective text is).  The text in Section 2.2.1.1 Frame Header says:

     The frame header consists of a three-character keyword (one of:
    "MSG", "RPY", "ERR", "ANS", or "NUL"), followed by zero or more
    parameters.  A single space character (decimal code 32, " ")
    separates each component.

  (my emphasis) but the ABNF in Section 2.2.1 Frame Syntax defines each of
the parameters as mandatory:

     data       = header payload trailer

    header     = msg / rpy / err / ans / nul

     msg        = "MSG" SP common          CR LF
    rpy        = "RPY" SP common          CR LF
    ans        = "ANS" SP common SP ansno CR LF
    err        = "ERR" SP common          CR LF
    nul        = "NUL" SP common          CR LF

     common     = channel SP msgno SP more SP seqno SP size

  So is it just poor text in Section 2.2.1.1 or is there a case where the
parameters are really optional?

  I ask because it makes the ABNF different if any parameter is truely
optional and it makes the parser need a few more checks for 'skipped'
parameters (assuming one could 'leave off', say' more as the text seemingly
implys).

  Bruce

===========================================================================
  Bruce Kahn                                INet:
Bruce_Kahn@notesdev.ibm.com
  Messaging & Collaboration                 Phone: 978.399.6496
  IBM Software Group                         FAX: and nothing but the FAX...
  Standard disclaimers apply, even where prohibited by law...

------=_NextPart_000_031E_01C1BE03.EE835BD0
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 5.50.4912.300" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT size=3D2>instead of "zero or more" it could say "six or =
seven", i=20
suppose.</FONT></DIV>
<DIV><FONT size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT size=3D2>nothing is optional, however "ANS" has one more =
parameter than=20
the others.</FONT></DIV>
<DIV><FONT size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT size=3D2>/mtr</FONT></DIV>
<BLOCKQUOTE=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV=20
  style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: =
black"><B>From:</B>=20
  <A title=3DBruce_Kahn@notesdev.ibm.com=20
  =
href=3D"mailto:Bruce_Kahn@notesdev.ibm.com">Bruce_Kahn@notesdev.ibm.com</=
A>=20
  </DIV>
  <DIV style=3D"FONT: 10pt arial"><B>To:</B> <A =
title=3DBEEPwg@lists.beepcore.org=20
  =
href=3D"mailto:BEEPwg@lists.beepcore.org">BEEPwg@lists.beepcore.org</A> =
; <A=20
  title=3Dietf-calendar@imc.org=20
  href=3D"mailto:ietf-calendar@imc.org">ietf-calendar@imc.org</A> </DIV>
  <DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Monday, February 25, 2002 =

  12:18</DIV>
  <DIV style=3D"FONT: 10pt arial"><B>Subject:</B> BEEP header &amp; ABNF =

  Question</DIV>
  <DIV><BR></DIV><BR><FONT face=3Dsans-serif size=3D2>[Crossposting this =
to BEEP and=20
  CalSched WGs to insure proper coverage]</FONT> <BR><BR><FONT =
face=3Dsans-serif=20
  size=3D2>In my attempt to be come more BEEP savy and dealing with the =
CAP issues=20
  I was rereading the BEEP RFC and I think there is a small disjoin =
between the=20
  text and the ABNF that folks should be aware of (or they can point out =
where=20
  the corrective text is). &nbsp;The text in Section 2.2.1.1 Frame =
Header=20
  says:</FONT> <BR><BR><FONT size=3D2><TT>&nbsp; &nbsp;The frame header =
consists=20
  of a three-character keyword (one of:<BR>&nbsp; "MSG", "RPY", "ERR", =
"ANS", or=20
  "NUL"), <B>followed by zero or more<BR>&nbsp; parameters</B>. &nbsp;A =
single=20
  space character (decimal code 32, " ")<BR>&nbsp; separates each=20
  component.</TT></FONT> <BR><BR><FONT face=3Dsans-serif size=3D2>(my =
emphasis) but=20
  the ABNF in Section 2.2.1 Frame Syntax defines each of the parameters =
as=20
  mandatory:</FONT> <BR><BR><FONT size=3D2><TT>&nbsp; &nbsp;data &nbsp; =
&nbsp;=20
  &nbsp; =3D header payload trailer<BR><BR>&nbsp; header &nbsp; &nbsp; =
=3D msg / rpy=20
  / err / ans / nul<BR></TT></FONT><BR><FONT size=3D2><TT>&nbsp; =
&nbsp;msg &nbsp;=20
  &nbsp; &nbsp; &nbsp;=3D "MSG" SP common &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;CR=20
  LF<BR>&nbsp; rpy &nbsp; &nbsp; &nbsp; &nbsp;=3D "RPY" SP common &nbsp; =
&nbsp;=20
  &nbsp; &nbsp; &nbsp;CR LF<BR>&nbsp; ans &nbsp; &nbsp; &nbsp; &nbsp;=3D =
"ANS" SP=20
  common SP ansno CR LF<BR>&nbsp; err &nbsp; &nbsp; &nbsp; &nbsp;=3D =
"ERR" SP=20
  common &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CR LF<BR>&nbsp; nul &nbsp; =
&nbsp;=20
  &nbsp; &nbsp;=3D "NUL" SP common &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CR=20
  LF<BR></TT></FONT><BR><FONT size=3D2><TT>&nbsp; &nbsp;common &nbsp; =
&nbsp; =3D=20
  channel SP msgno SP more SP seqno SP size</TT></FONT> <BR><BR><FONT=20
  face=3Dsans-serif size=3D2>So is it just poor text in Section 2.2.1.1 =
or is there=20
  a case where the parameters are really optional? &nbsp;</FONT> =
<BR><BR><FONT=20
  face=3Dsans-serif size=3D2>I ask because it makes the ABNF different =
if any=20
  parameter is truely optional and it makes the parser need a few more =
checks=20
  for 'skipped' parameters (assuming one could 'leave off', say' more as =
the=20
  text seemingly implys).</FONT> <BR><BR><FONT face=3Dsans-serif=20
  size=3D2>Bruce</FONT> <BR><FONT face=3Dsans-serif=20
  =
size=3D2>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D<BR>Bruce=20
  Kahn &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;=20
  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;INet:=20
  Bruce_Kahn@notesdev.ibm.com<BR>Messaging &amp; Collaboration &nbsp; =
&nbsp;=20
  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Phone: 978.399.6496<BR>IBM =
Software=20
  Group &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;=20
  &nbsp; &nbsp; FAX: and nothing but the FAX...<BR>Standard disclaimers =
apply,=20
  even where prohibited by law...</FONT></BLOCKQUOTE></BODY></HTML>

------=_NextPart_000_031E_01C1BE03.EE835BD0--