Subject: [MMUSIC] ABNF Question on draft-ietf-mmusic-sdp-media-capabilities

From: Christian Groves <[email-masked]>
Date: Wed, 28 Apr 2010 15:27:50 +1000

Hello,

I'm reviewing draft-mmusic-sdp-media-capabilities-09 and have a question 
regarding some ABNF in section 3.3.5.

It defines the lcfg attribute as adhering to RFC4566 with an att-value 
defined as:

att-value = config-number 1*(1*WSP latent-cfg-parm))

This ABNF looks a bit strange that it has "1*(1" and an extra bracket. 
Should this be?

att-value = config-number * (1*WSP latent-cfg-parm)

Or have I missed the significance of the initial "1"?

Regards, Christian

---

From: "Paul E. Jones" <[email-masked]>
Date: Wed, 28 Apr 2010 09:58:42 -0400

Christian,

> Or have I missed the significance of the initial "1"?

I think the final ) is an error. Removing that, the ABNF would be:

att-value = config-number 1*(1*WSP latent-cfg-parm)

which says we can have 1 or more of X where X is:

  1 or more whitespace characters followed by a latent-cfg-parm

Paul

---

From: Bob Gilman <[email-masked]>
Date: Wed, 28 Apr 2010 09:37:50 -0600

Paul's correct.  We'll remove the extra right paren.
-Bob
-------------------------------------------------------------
Bob Gilman        [email-masked]      +1 303 898 9780

Paul E. Jones wrote:
> _______________________________________________
> mmusic mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/mmusic
> 
>

---

From: Christian Groves <[email-masked]>
Date: Fri, 30 Apr 2010 09:56:11 +1000

G'Day Paul and Bob,

Thanks for the clarification. With the extra ")" I didn't know if there 
were more errors in the ABNF. What also threw me is the text of section 
3.3.6 which says:
  " The parameters and their definitions are "borrowed" from the 
definitions provided for the latent configuration attribute in section 
3.3.5."
Whilst section 3.3.5 enforces the inclusion of parameters for the 
att-value section 3.3.6 has a different structure that makes it 
optional. Further compounding my confusion was the procedural text of 
section 3.3.6.1 which also talks about returning lcfg attributes and 
hear pcfg parameters are optional.

Also given that the ABNF is trying to be strict in enforcing at least 
one instance of latent-cfg-parm is the ABNF for latent-cfg-parm the most 
appropriate (i.e. use of alternatives "/") given the explanation in the 
paragraph below it that states that media-type, 
transport-protocol-config-list and media-config-list must be present?

With regards to the transport-protocol-config-list (t=) parameter 3.3.4 
says " The transport-protocol-config-list (t=) parameter and the 
media-config-list (m=) parameter must also be present.", however in the 
example in section 4.3 is missing t= as part of the a=lcfg:10 mt=video 
m=10|11 line.

In section 3.3.2.1 there also seems to be a missing "]" or an additional 
"[" depending on what is wanted. Its also interesting why you'd have 
"1*" for an optional element, i.e.:

a= fmtp:<fmt> 1*WSP <fmt-specific-param-list> [1*[";" 1*WSP

<fmt-specfic-param-list>]

Regards, Christian