Subject: Implementor's Guide v3 -- Correction

From: Chanchal Hassija <[email-masked]>
Date: Thu, 19 Oct 2000 13:16:10 +0530

Hello Christian,

There is a correction required in the implementor's guide.....section 8.5 which
says that

DigitMap= Dialplan0{

(0| 00|[1-7][xxx]|8[xxxxxxx]|F[xxxxxxx]|E[xx]|91[xxxxxxxxxx]|9011[x].)}

The change that has been done is enclosing XX... digit string in [ ] .... but as
per the mail attached below ... the understanding reached was to make a change
in the grammar and not in the example (given above) to make things clearer.

Hence the change required is to replace

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

with

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

Any comments....

Thanks

Chanchal...

John Segers <[email-masked]> on 09/14/2000 07:44:24 AM

Please respond to John Segers <[email-masked]>

To:   [email-masked]
cc:    (bcc: Chanchal Hassija/HSS)

Subject:  Re: Syntax problems

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

"Prozan, Rakefet" wrote:
>
> 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 !!!

--
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

---

From: Christian Groves <[email-masked]>
Date: Fri, 20 Oct 2000 10:42:55 +1100

G'Day Chanchal,

Thanks for the info. I'll update the implementors' guide accordingly.

8.5 Syntax Problem in Appendix A
Description:    According to the definition of digitMapRAnge :
digitMapRange = ("x" / LWSP "[" LWSP digitLetter LWSP "]" LWSP)
 "x" must be followed by "[" .
Reference:      Subject: Re: Syntax problems
Date:  Thu, 14 Sep 2000 04:14:24 +0200
From: John Segers <[email-masked]>
Organization: Lucent Technologies
To: [email-masked]
 [Begin Correction]
B.2 ABNF specification
...
digitMapRange        = ("x" / (LWSP "[" LWSP digitLetter LWSP "]" LWSP))

[End Correction]

Cheers, Christian