Subject: empty Media Descriptor ?

From: Troy Cauble <[email-masked]>
Date: Fri, 27 Apr 2001 16:08:28 -0400

Recent changes in v5 section 1.6 allow an
empty MediaDescriptor in the ASN.1 encoding.

The ABNF does not allow an empty mediaDescriptor.

Which makes sense?  Should one be changed?

-troy

---

From: Christian Groves <[email-masked]>
Date: Mon, 30 Apr 2001 16:13:41 +1000

G'Day Troy,

Yes I believe the comment in the ABNF needs to be changed.

ie.
[Begin Correction]
Section B.2 ABNF Specification
…
; at-most-once per item
; and may include either streamParm or streamDescriptor but not both
mediaParm            = (streamParm / streamDescriptor / 
                        terminationStateDescriptor)
…
 [End Correction]

Cheers, Christian

---

From: Troy Cauble <[email-masked]>
Date: Mon, 30 Apr 2001 10:47:25 -0400

Christian,

I think you missed my point.

The ASN.1

   MediaDescriptor ::= SEQUENCE
   {

        termStateDescr  TerminationStateDescriptor OPTIONAL,
        streams         CHOICE
                {
                        oneStream       StreamParms,
                        multiStream     SEQUENCE OF StreamDescriptor
                } OPTIONAL,
        ...
   }

allows an *EMPTY* MediaDescriptor (since all elements are optional), 
while the ANBF (which requires at least one mediaParm) does not:

   mediaDescriptor = MediaToken LBRKT mediaParm *(COMMA mediaParm)
                        RBRKT

   ; at-most-once per item
   ; using either streamParm or streamDescriptor but not both
   mediaParm            = (streamParm / streamDescriptor /
                           terminationStateDescriptor)

Does it make sense to allow an empty MediaDescriptor?
Should one of these be changed accordingly?

-troy

Christian Groves wrote:
> ?
> ?

---

From: Christian Groves <[email-masked]>
Date: Tue, 01 May 2001 11:09:22 +1000

G'Day Troy,

Yes, I was addressing a slightly different problem in the ABNF in the
mediaParm comment that read that you must have either a streamparm or
streamdescriptor even though you may just have a terminationState
descriptor.

With regards to the missed point I don't see that this difference
introduces any incompatibility problems. According to the procedural
text I can't see any case (if someone can please tell me) where the
Media descriptor will be completely empty because terminationState will
always have a value. Thus whilst the ABNF enforces at least one having
the ASN1 allowing nothing doesn't harm the encoding. The procedures of
the protocol should enforce this behaviour not the syntax. Thus I don't
really see the need for an update.

Cheers, Christian