Subject: CAP 10: Bad other-props constuction/ABNF

From: [email-masked]
Date: Wed, 29 Jan 2003 14:46:56 -0500

In drafting some new text to propose to resolve another issue I ran across 
a problem w/the ABNF for other-props.  The Draft 10-12Jan2003 has:

 other-props  = *(";" x-prop) *(";" iana-prop) *(";" x-prop)

which does work as expected when actually used.  In the context of 2445 
corrections it is defined to be used as:

calprops   = 2*(

           ; 'prodid' and 'version' are both REQUIRED,
           ; but MUST NOT occur more than once.
           ;
             prodid /version /

           ; These are optional, but MUST NOT occur
           ; more than once.
           ;
             calscale        /
             method          /
             cmd             /

           ; These are optional, and may occur more
           ; than once.
           ;
             target / other-props

(I already told Doug about the missing closing paren...)

So the resulting iCalendar from this SHOULD be:

BEGIN:VCALENDAR
PRODID:-//someone's prodid
VERSION:2.0
CMD;ID=creation01:CREATE
TARGET:cal.example.com
FRODO-LIVES:TRUE
X-LDC-NOTES:Buy Notes R6
...

but thats NOT what the ABNF says.  By the ABNF I should prefix ALL X- 
properties and IANA properties with a ';':

BEGIN:VCALENDAR
PRODID:-//someone's prodid
VERSION:2.0
CMD;ID=creation01:CREATE
TARGET:cal.example.com
;FRODO-LIVES:TRUE
;X-LDC-NOTES:Buy Notes R6
...

This violates 2445 parsing rules for a basic content line:

     contentline        = name *(";" param ) ":" value CRLF

by making the name property NULL and turning the actual property name into 
a paramter name.  The ABNF for other-props needs to be fixed.  I _think_ 
that changing it to:

 other-props  = *(
              x-prop [";" other-props] /
              iana-prop [";" other-props]
                 )

should work.  I have _not_ taken the time to check this against all 
references in the draft as Im on a short leash today and Im working to get 
a well formed proposal out for the other pressing issues. 

Bruce
===========================================================================
Bruce Kahn                                INet: 
[email-masked]
Messaging & Collaboration                 Phone: 978.399.6496
IBM Software Group                         FAX: and nothing but the FAX...
Standard disclaimers apply, even where prohibited by law...