Subject: RE: [Megaco] Reg contextAttrDescriptor Structure Difference between TEXT and ASN Modes

From: "Arvind Charanyan" <[email-masked]>
Date: Tue, 5 Jun 2007 11:26:26 +0530

Hi,

In the case you have mentioned below, if we can have "0 to one
contextIdList AND 0 to infinite number of propertyParm (covered by the
*(COMMA propertyParm))", then what would be the SEPARATOR between the
two when both are present.

Looking forward to some inputs in this regard.

Thanks and Regards,

Arvind  

________________________________

From: Jisu Bhattacharya [mailto:[email-masked]] 
Sent: Wednesday, May 30, 2007 11:46 PM
To: Arvind Charanyan
Cc: [email-masked]
Subject: Re: [Megaco] Reg contextAttrDescriptor Structure Difference
between TEXT and ASN Modes

Arvind,

contextIdList / propertyParm *(COMMA propertyParm)

does not mean a choice between contextIdList and propertyParm. It means
that you can have 0 to one contextIdList AND 0 to infinite number of
propertyParm (covered by the *(COMMA propertyParm)). However, it
requires at least one contextIdList or propertParm to be present. 

Hope this helps.

Thanks,
Jisu

On 5/30/07, Arvind Charanyan <[email-masked] > wrote:

Hi,

I have a doubt regarding the implementation of the contextAttrDescriptor
in TEXT Mode. 

The ABNF definition for contextAttrDescriptor is as follows - 

contextAttrDescriptor = ContextAttrToken LBRKT (contextIdList /
propertyParm *(COMMA propertyParm)) RBRKT

which means it is a choice between contextIDList and propertyparm.

But according to ASN Grammar, the ContextRequest is defined as follows -

ContextRequest                      ::= SEQUENCE

{

             priority
INTEGER(0..15) OPTIONAL,

             emergency                                           BOOLEAN
OPTIONAL,

             topologyReq
SEQUENCE OF TopologyRequest OPTIONAL,

             ...,

             iepscallind
BOOLEAN OPTIONAL,

             contextProp
SEQUENCE OF PropertyParm OPTIONAL,

             contextList
SEQUENCE OF ContextID OPTIONAL

}

In this PropertyParm and ContextIDList are part of the sequence.

Can you please help me out by clarifying this ambiguity between ABNF and
ASN Grammar?

Thanks,

Arvind

_______________________________________________
Megaco mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/megaco

_______________________________________________
Megaco mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/megaco

---

From: "Jisu Bhattacharya" <[email-masked]>
Date: Tue, 5 Jun 2007 11:23:48 -0700

Arvind,

COMMA(,) is the separator between the two. The ContextIdList begins with
ContextListToken (CLT or "ContextList"), so it will be easy to distinguish
it from propertyParm.

Thanks,
Jisu

On 6/4/07, Arvind Charanyan <[email-masked]> wrote:
>
>  Hi,
>
>
>
> In the case you have mentioned below, if we can have *"**0 to one
> *(COMMA propertyParm))", *then what would be the SEPARATOR between the two
> when both are present.
>
>
>
>   ------------------------------
>
> *From:* Jisu Bhattacharya [mailto:[email-masked]]
> *Sent:* Wednesday, May 30, 2007 11:46 PM
> *To:* Arvind Charanyan
> *Cc:* [email-masked]
> *Subject:* Re: [Megaco] Reg contextAttrDescriptor Structure Difference
> *contextIdList / propertyParm *(COMMA propertyParm)
> *
> propertyParm (covered by the *(COMMA propertyParm)). However, it requires at
> least one contextIdList or propertParm to be present.
>
> Hope this helps.
>
> Thanks,
> Jisu
>
>  On 5/30/07, *Arvind Charanyan* <[email-masked] > wrote:
>
> Hi,
>
>
>
> The ABNF definition for contextAttrDescriptor is as follows –
>
>
>
> *contextAttrDescriptor = ContextAttrToken LBRKT (contextIdList /
> propertyParm *(COMMA propertyParm)) RBRKT*
>
>
>
> But according to ASN Grammar, the ContextRequest is defined as follows –
>
>
>
> *ContextRequest                      ::= SEQUENCE*
>
> *{*
>
> *             priority
> INTEGER(0..15) OPTIONAL,*
>
> *             emergency                                           BOOLEAN
> OPTIONAL,*
>
> *             *topologyReq
> *             …,*
> *             iepscallind
> BOOLEAN OPTIONAL,*
> *             contextProp                                         SEQUENCE
> OF PropertyParm OPTIONAL,*
>
> *             contextList
> SEQUENCE OF ContextID OPTIONAL*
>
> *}*
>
>
>

---

From: <[email-masked]>
Date: Wed, 6 Jun 2007 10:19:10 +0100

Hmm, if the separator is COMMA where is the syntactic definition that defines that? I think you are slightly misreading the definition of contextAttrDescriptor.
 
A single instance of a contextAttrDescriptor can only contain either a single contextIdLIst or a (comma separated) list of one or more propertyParm. If any higher level construct should allow more than one contextAttrDescriptor then that construct would define the separator at that level between those multiple instances of contextAttrDescriptor.
 
Referring to the original question, possibly the ambiguity is to whether the contextRequest allows multiple instances of contextAttrDescriptor.
 
The ASN suggests that syntactically a ContextRequest can contain both a list of PropertyParm and a list of ContextID (both are optional.)
 
However, in the ABNF definition of contextRequest it is implied (if I understand correctly) that when there is a list of contextProperty then each possible property can only appear in the list at most once. So contextAttrDescriptor (being a contextProperty) can only appear once in which case it is not valid (although still syntactically correct) for a contextRequest to contain both a contextIdList and a list of propertyParm (as this would imply multiple instances of contextAttrDescriptor).
 
For the two definitions to be consistent the ASN definition should also mention that contextProp and contextList are mutually exclusive.
 
Regards...jeremy

	From: Jisu Bhattacharya [mailto:[email-masked]] 
	Sent: 05 June 2007 19:24
	To: Arvind Charanyan
	Cc: [email-masked]
	Subject: Re: [Megaco] Reg contextAttrDescriptor Structure Difference betweenTEXT and ASN Modes

	Arvind,
	
	COMMA(,) is the separator between the two. The ContextIdList begins with ContextListToken (CLT or "ContextList"), so it will be easy to distinguish it from propertyParm.
	
	Thanks,
	Jisu

		Hi,

		In the case you have mentioned below, if we can have "0 to one contextIdList AND 0 to infinite number of propertyParm (covered by the *(COMMA propertyParm))", then what would be the SEPARATOR between the two when both are present.

		Thanks and Regards,

		Arvind  

		From: Jisu Bhattacharya [mailto:[email-masked]] 
		Sent: Wednesday, May 30, 2007 11:46 PM
		To: Arvind Charanyan
		Cc: [email-masked]
		Subject: Re: [Megaco] Reg contextAttrDescriptor Structure Difference between TEXT and ASN Modes

		Arvind,

		does not mean a choice between contextIdList and propertyParm. It means that you can have 0 to one contextIdList AND 0 to infinite number of propertyParm (covered by the *(COMMA propertyParm)). However, it requires at least one contextIdList or propertParm to be present. 
		
		Hope this helps.
		
		Thanks,
		Jisu

		Hi,

		I have a doubt regarding the implementation of the contextAttrDescriptor in TEXT Mode. 

		contextAttrDescriptor = ContextAttrToken LBRKT (contextIdList / propertyParm *(COMMA propertyParm)) RBRKT

		{

		             priority                                                 INTEGER(0..15) OPTIONAL,

		             emergency                                           BOOLEAN OPTIONAL,

		             topologyReq                                         SEQUENCE OF TopologyRequest OPTIONAL,

		             ...,

		             iepscallind                                           BOOLEAN OPTIONAL,

		             contextProp                                         SEQUENCE OF PropertyParm OPTIONAL,

		             contextList                                           SEQUENCE OF ContextID OPTIONAL

		}

		Can you please help me out by clarifying this ambiguity between ABNF and ASN Grammar?

		Thanks,

		Arvind

---

From: "Jisu Bhattacharya" <[email-masked]>
Date: Wed, 6 Jun 2007 07:31:16 -0700

The ContextAttrDescriptor is
*contextIdList / propertyParm *(COMMA propertyParm)
* as per ABNF.
Therefore, "contextIDList COMMA propertyParm" should be able to
match this grammar syntactically.
What am I missing?

On 6/6/07, [email-masked] <[email-masked]> wrote:
>
>  Hmm, if the separator is COMMA where is the syntactic definition that
> defines that? I think you are slightly misreading the definition of
> contextAttrDescriptor.
>
> A single instance of a contextAttrDescriptor can only contain either a
> single contextIdLIst or a (comma separated) list of one or more
> propertyParm. If any higher level construct should allow more than one
> contextAttrDescriptor then that construct would define the separator at that
> level between those multiple instances of contextAttrDescriptor.
>
> Referring to the original question, possibly the ambiguity is to whether
> the contextRequest allows multiple instances of contextAttrDescriptor.
>
> The ASN suggests that syntactically a ContextRequest can contain both a
> list of PropertyParm and a list of ContextID (both are optional.)
>
> However, in the ABNF definition of contextRequest it is implied (if I
> understand correctly) that when there is a list of contextProperty then each
> possible property can only appear in the list at most once. So
> contextAttrDescriptor (being a contextProperty) can only appear once in
> which case it is not valid (although still syntactically correct) for a
> contextRequest to contain both a contextIdList and a list of propertyParm
> (as this would imply multiple instances of contextAttrDescriptor).
>
> For the two definitions to be consistent the ASN definition should also
> mention that contextProp and contextList are mutually exclusive.
>
> Regards...jeremy
>
> *Sent:* 05 June 2007 19:24
> *To:* Arvind Charanyan
> *Cc:* [email-masked]
> betweenTEXT and ASN Modes
>
> Arvind,
>
> > *(COMMA propertyParm))", *then what would be the SEPARATOR between the
> > *             emergency
> > *             contextProp
> > SEQUENCE OF PropertyParm OPTIONAL,*
> >
> > *             contextList

---

From: <[email-masked]>
Date: Wed, 6 Jun 2007 23:37:43 +0100

The two elements in the alternative rule are <contextIdList> and <propertyParm *(COMMA propertyParm)>. It would be less ambiguous if the form "contextIdList / (propertyParm *(COMMA propertyParm)) we used to explicitly delimit the sequence group.RFC 2234 gives some information about alternatives and sequence groups that explains just such an example case.
 
Regards...jeremy 

	From: Jisu Bhattacharya [mailto:[email-masked]] 
	Sent: 06 June 2007 15:31
	To: [email-masked]
	Cc: [email-masked]
	Subject: Re: [Megaco] Reg contextAttrDescriptor Structure Difference betweenTEXT and ASN Modes

	as per ABNF.

	On 6/6/07, [email-masked] <[email-masked] > wrote: 

		 

		 
		 
		Regards...jeremy

			
			To: Arvind Charanyan
			Cc: [email-masked]

			Arvind,

			Thanks,
			Jisu

				Hi,

				Thanks and Regards,

				Arvind  

				Arvind,

				
				Hope this helps.
				
				Thanks,
				Jisu

				On 5/30/07, Arvind Charanyan < [email-masked] <mailto:[email-masked]> > wrote:

				Hi,

				{

				             ...,

				}

				Thanks,

				Arvind