Subject: CAP ABNF: queryc is only used in 1 command?

From: [email-masked]
Date: Thu, 29 May 2003 17:52:12 -0400

Unless I am mistaken I can only find 1 CAP command that uses the CAP-QL in 
the ABNF.  That is the CREATE command.

The way I got to this conclusion is by following the ABNF.  I started with 
6.1.1. CAL-QUERY Value Type:

  cal-query  = "SELECT"   SP   cap-val  SP
                        "FROM"     SP   comp-name SP
                        "WHERE"    SP   cap-expr

                      / "SELECT" SP cap-cols SP
                        "FROM"   SP comp-name

In looking for cal-query I find it used in the ABNF for, 8.33. RESTRICTION 
Property , 8.34. SCOPE Property  and 8.26. QUERY property .  The first 2 
properties are part of VRIGHTs/VCARs and should be part of the ABNF of 
some command (I didnt trace up this tree though to be sure).  I did 
however look at the ABNF for 8.26. QUERY property which says:

query      = "QUERY" other-params ":" cal-query CRLF

In looking for references to query I only find a reference under 9.6. 
VQUERY Component:

queryc    =  "BEGIN" ":" "VQUERY" CRLF
             queryprop
             "END" ":" "VCAR" CRLF

queryprop = 1*(

          ; 'queryid' is OPTIONAL but MUST NOT occur
          ; more than once. If the "TARGET" property
          ; is supplied then the "QUERYID" property
          ; MUST BE supplied.
          ;
           queryid / target

          ; 'expand' is OPTIONAL but MUST NOT occur
          ; more than once.

           expand

          ; the following are OPTIONAL, and MAY occur
          ; more than once
          ;
          / name / other-props

          ; the following MUST occur at least once.
          ;
          / query

        )

So I looked for where queryc was used in CAP and I can only find 1 use of 
it in ANY command, the CREATE command in 10.1.4.  CREATE Command :

create-object = "BEGIN" ":" "VCALENDAR" CRLF
              ; If 'calprops' contain the "METHOD" property
              ; then this 'create-object' component MUST
              ; conform to [iTIP] restrictions.
              ;
              ; calprops MUST include 'create-cmd'
              ;
                calprops
                other-props
                1*(create-comp)
                "END" ":" "VCALENDAR" CRLF

              ; NOTE: The 'VCALSTORE' component is not included in
              ; 'create-comp' as it is out of scope for CAP to create
              ; a new CS.
              ;
 create-comp = agendac / carc / queryc
               / timezonec / freebusyc
               / eventc / todoc / journalc
               / iana-comp / x-component

So this makes me think that ALL OTHER CAP commands are unable to use 
VQUERYs.  Clearly this is wrong but perhaps Im just not reading the ABNF 
properly.  Anyone else see this?

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...
Warning: Dates in Calendar are closer than they appear.