Subject: CAP (why 'source'?)

From: Doug Royer <[email-masked]>
Date: Tue, 08 Jan 2002 17:19:53 -0700

> 6.2.3.3 "source" Element
>
>   The "source" element is used to specify container(s) that will be
>   examined during the execution of a CAP command.  The "source" element
>   is similar to the "target" element (see Section 6.2.3.4, but can
>   refer to several containers (e.g., a calendar hierarchy or all the
>   calendar owned by a given CU).

Why? You can do EXACTLY the same thing with TARGET.
Multiple TARGETs can already be specified, Why is this needed?

---

From: Patrice Lapierre <[email-masked]>
Date: Tue, 08 Jan 2002 20:14:45 -0500

...
> Multiple TARGETs can already be specified, Why is this needed?

  The "move" command uses "source" for the origin(s) and "target" 
for the destination. The two concepts are needed in the same 
command. Using the same property for the two concepts seems 
confusing.

  Another difference is that a single source can refer to many 
containers (e.g. search in all the VAGENDAs that I own), the 
<target> always refer to a single container. If source is
removed, then for each command we would have to document if
the target(s) can refer to multiple containers.

---

From: Doug Royer <[email-masked]>
Date: Tue, 08 Jan 2002 18:51:24 -0700

> command. Using the same property for the two concepts seems

That's no reason to change all of the other commands that
uses TARGET.

The agreed on method for changing things (from memory, may
not be exactly accurate):

Define what you want to do:
   ...
   C: VERSION:2.1
   C: METHOD:MODIFY
   C: TARGET:relcal2
   C: BEGIN:VCOMMAND
   C: BEGIN:VQUERY
   C: QUERY:SELECT UID FROM VEVENT WHERE UID = 'abcd12345'
   C: END:VQUERY

Describe what you want to change (old):

   C: BEGIN:VEVENT
   C: DTSTART:20020420T180000Z
   C: DTEND:20020420T183000Z
   C: LOCATION:Jack's Pizza Place
   C: END:VEVENT

Describe what you want it to be (new) - in this example LOCATION
was deleted and the event start/end dates were moved, all in one
operation:

   C: BEGIN:VEVENT
   C: DTSTART:20020521T160000Z
   C: DTEND:20020521T163000Z
   C: END:VEVENT

   C: END:VCOMMAND
   C: END:VCALENDAR

It is not XML, but we agreed to do it this way and there
has been no debate to reopen this issue.

There is NO reason to change other things in order to
implement MOVE.

Better or newer are not reasons to re-open the issue.
It's like trying to always own the fastest processor you
can buy - it never ends.

> the target(s) can refer to multiple containers.

That was never in CAP requirements - it is out of scope
for this version of CAP. Propose an add on for CAP if you
want it.