Subject: Syntax problems

From: "Prozan, Rakefet" <[email-masked]>
Date: Tue, 12 Sep 2000 12:17:40 +0300

Hi all,

The previous mail was sent by mistake. This is the correct mail:

Can someone clear the following issues in ABNF?

1) In APPENDIX A EXAMPLE CALL FLOW:

   ...
   8.  The MGC Modifies the termination to play dial tone, to look for
   digits according to Dialplan0 and to look for the on-hook event now.
   MGC to MG1:

   MEGACO/1 [123.123.123.4]:55555
   Transaction = 10001 {
       Context = - {
           Modify = A4444 {
               Events = 2223 {
                   al/on, dd/ce {DigitMap=Dialplan0}
               },
               Signals {cg/dt},
               DigitMap= Dialplan0{
   (0| 00|[1-7]xxx|8xxxxxxx|Fxxxxxxx|Exx|91xxxxxxxxxx|9011x.)}
           }
       }
   }

  According to the definition of digitMapRAnge :

   digitMapRange = ("x" / LWSP "[" LWSP digitLetter LWSP "]" LWSP)

  "x" must be followed by "[" .
  So, either there is an error in the example,or the definition should
be:

  digitMapRange = ("x" /( LWSP "[" LWSP digitLetter LWSP "]" LWSP ))

2) In ABNF:

   contextRequest = ((contextProperties [COMMA contextAudit])
                  / contextAudit)

   contextProperties  = contextProperty *(COMMA contextProperty)

My problem is : if the parser finds a COMMA after a contextProperty, it
doesn't have any indication to know what will come after this COMMA:
another
contextProperty,or the optional contextAudit. This results in a loop.
I think that there are two alternatives ways to solve this:

Either to put  contextAudit in { } :

contextRequest = ((contextProperties LBRKT [COMMA contextAudit] RBRKT)
               / contextAudit)

Or put contextProperties in { } :

contextRequest = ((LBRKT contextProperties RBRKT [COMMA contextAudit])
                  / contextAudit)

 thank you in advance,
--
Rakefet Prozan,
Team Manager, S/W Development
Nortel SBU
Telrad Networks
ESN 828-3043   Email:[email-masked]

                                       """
                                     -(o o)-
+---------------------------------oOO--(_)--OOo--------------+

                               .oooO         Oooo.
-------------------------------(   )---------(   )------------
                                \ (           ) /
                                 \_)         (_/

Have fun !!!

---

From: John Segers <[email-masked]>
Date: Thu, 14 Sep 2000 04:14:24 +0200

Rakefet,

1. I seems that the parentheses are missing, as you suggested.

2. Looks like this could get you a shift-reduce conflict. That can be
circumvented by having your lexer peek ahead and having two tokens for
the semicolon.  Ugly.

Cheers,

John

--
John Segers                                  email: [email-masked]
Lucent Technologies                                        Room HE 303
Dept. Forward Looking Work                      phone: +31 35 687 4724
P.O. Box 18, 1270 AA  Huizen                      fax: +31 35 687 5954