Subject: Re: ATT-COUNTER added to CAP

From: [email-masked]
Date: Mon, 28 Oct 2002 17:05:24 -0500

Doug proposed:
>     Property Parameters: Non-standard property parameters can be
>     specified on this property.
> 
[Snip]
>     Formal Definition: The property is defined by the following 
notation:
> 
>           attcounter   = "ATT-COUNTER" *(";" xparam) ":" cal-address 
CRLF

You are missing some property parameters.  I think that the ABNF should be 
changed to be more like:

          attcounter   = "ATT-COUNTER" attcounterparam ":" cal-address 
CRLF

          attcounterparam = *(

                ; the following are optional,
                ; but MUST NOT occur more than once

                ( ";" sentbyparam ) /
                ( ";" cnparam ) / 
                ( ";" languageparam )

                ; the following is optional,
                ; and MAY occur more than once

                (";" xparam)
                )

so that it will permit SENT-BY, CN and LANGUAGE to be specified as well. 
Im not sure any other parameters are necessary beyond these but perhaps 
this will jog some others memories.

Also, the Property Parameters text should be more like:

   Property Parameters: Non-standard, language, sent by or common name 
   property parameters can be specified on this property.

Do we need a Conformance section (ala ATTENDEE) that says something like:

   Conformance: This property MUST be specified in an iCalendar object
   that specifies counter proposal to a group scheduled calendar entity. 
   This property MUST NOT be specified in an iCalendar object when 
   publishing the calendar information (e.g., NOT in an iCalendar 
   object that specifies the publication of a calendar user's busy time,
   event, to-do or journal).  This property is not specified in an 
   iCalendar object that specifies only a time zone definition or 
   that defines calendar entities that are not group scheduled entities
   which are not being counter proposed.

Better wordsmithing is probably in order but the intent is clear and its 
use properly restricted.

Bruce
===========================================================================
Bruce Kahn                                INet: 
[email-masked]
Messaging & Collaboration                 Phone: 978.399.6496
IBM Software Group                         FAX: and nothing but the FAX...

---

From: Doug Royer <[email-masked]>
Date: Mon, 28 Oct 2002 15:38:52 -0700

[email-masked] wrote:
>  >     Formal Definition: The property is defined by the following notation:
>  >
>  >           attcounter   = "ATT-COUNTER" *(";" xparam) ":" cal-address CRLF

No - the ATT-COUNTER property does not take SENT-BY, CN, or the LANG
parameters.

-- 
-
Doug Royer                       Work: (208)612-INET
[email-masked]                   Fax:  (866)594-8574
http://INET-Consulting.com       Cell: (208)520-4044
http://Royer.com/People/Doug

---

From: Doug Royer <[email-masked]>
Date: Mon, 28 Oct 2002 15:52:24 -0700

> Better wordsmithing is probably in order but the intent is clear and its 

At is MUST BE added to all METHOD:COUNTER objects by the CUA, how about:

   Conformance: This property MUST be specified in an iCalendar object
   that specifies counter proposal to a group scheduled calendar entity.
   When storing a "METHOD" property with the "COUNTER" method, there
   needs to be a way to remember who sent the COUNTER. The ATT-COUNTER
   property MUST BE added to all "COUNTER" [iTIP] components by
   the CUA before storing in a CS.

The rest of the objects you list could never have a COUNTER method, so
the rest of the text is unnecessary. You can't say METHOD:PUBLISH
and METHOD:COUNTER in the same object - for example. And you
do not COUNTER a time-zone.

-

---

From: [email-masked]
Date: Tue, 29 Oct 2002 13:27:27 -0500

> No - the ATT-COUNTER property does not take SENT-BY, CN, or the LANG

It needs to.  Otherwise my AA cannot counter for me (or you have no way to 
tell that my AA did it for me in your UI will you?).  The CN and LANG 
property parameters are also useful for the same reason they are useful on 
the ATTENDEE property.

Bruce
Standard disclaimers apply, even where prohibited by law...

---

From: [email-masked]
Date: Tue, 29 Oct 2002 13:55:20 -0500

Doug responded on 10/28/2002 05:52:24 PM:
>    When storing a "METHOD" property with the "COUNTER" method

                                                          Make this ^^^^^^ 
'value' instead of 'method' since its a value that can be on a METHOD 
property.

>                                                               , there

Nice wordsmithing...

> do not COUNTER a time-zone.

The intent of my verbose text was to make it clear what components can 
contain an ATTCOUNTER and which cannot.  Its semi-explicit when we use 
text like:

    Conformance: This property MUST BE specified in any component
    with the "METHOD" value of "COUNTER".

because only VCALENDARs, at this point, can contain a METHOD property. The 
rest of the containers (ie: VEVENT, VTIMEZONE, VALARM, etc) are contained 
w/a VCALENDAR in the data stream.  I just like being as clear as possible 
so noone tries to misplace the new property. 

We should make note that the new ATTCOUNTER property (I dislike the 
hyphen) means a change to the ABNF in 2445 to become:

     calprops   = 2*(

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

                prodid /version /

                ; 'calscale' and 'method' are optional,
                ; but MUST NOT occur more than once

                calscale        /
                method          /

                ; 'attcounter' is ONLY permitted if 'method'
                ; exists and has the value "COUNTER"
                ; and MUST NOT occur more than once

                attcounter      /

                x-prop
                )

Bruce

---

From: Doug Royer <[email-masked]>
Date: Tue, 29 Oct 2002 13:35:57 -0700

[email-masked] wrote:
> It needs to.  Otherwise my AA cannot counter for me (or you have no way 
> to tell that my AA did it for me in your UI will you?).  The CN and LANG 
> property parameters are also useful for the same reason they are useful 
> on the ATTENDEE property.

So when an e-mail comes in and the From address set to:

	 "[email-masked]"

Please explain what I set the CN, SENT-BY and LANG values to
in the ATT-COUNTER property to? How would I know that the value
of the From: address is or is not an SA?

I would set the ATT-COUNTER property value to: 	

	mailto:[email-masked]

The rest eludes me - please enlighten :-)

---

From: [email-masked]
Date: Wed, 30 Oct 2002 10:11:47 -0500

> of the From: address is or is not an SA?

I assume your 'e-mail' is an iTIP message.  However thats outside the 
discussion bounds since the real focus is on the properties in the 
iCalendar stream, not on the wrapper/meta info outside the stream.  The 
email bit is superfluous but Ill include it since you asked.  You can 
strip it off for pure CAP transport if you prefer.

This is how an iTIP COUNTER would be (partly) constructed from me to you:

    From: [email-masked]
    To: [email-masked]
    Subject: Counter proposal for that conf. call
    Content-Type: text/calendar; method=counter

    ...
    ORGANIZER:mailto:[email-masked]
    ATTENDEE;CN="Bruce 
Kahn/NotesDev/IBM":mailto:[email-masked]
    ATTCOUNTER;CN="Bruce 
Kahn/NotesDev/IBM":mailto:[email-masked]
    ...

This is how an iTIP COUNTER would be (partly) constucted from my AA to you 
on my behalf:

    From: [email-masked]
    To: [email-masked]
    Subject: Counter proposal for that conf. call
    Content-Type: text/calendar; method=counter

    ...
    ORGANIZER:mailto:[email-masked]
    ATTENDEE;CN="Bruce 
Kahn/NotesDev/IBM":mailto:[email-masked]
    ATTCOUNTER;SENT-BY=mailto:[email-masked];CN="Bruce 
Kahn/NotesDev/IBM":mailto:[email-masked]
    ...

The CN (and also the related LANG) property are used just as they are in 
ANY other iTIP message.  Their usage han not changed and they are equally 
useful on the COUNTER for the same reason they are useful on the other 
methods!

The SENT-BY property parameter is used just as in iTIP when an AA 
"accepts" for me.  Only this time they are COUNTERing for me.  Since I/she 
could be COUNTERing to remove me as an ATTENDEE (and put someone in my 
place?) you need to have the SENT-BY info on the ATTCOUNTER and NOT on my 
ATTENDEE property which may not be there on _my_ COUNTER to _your_ event.

> The rest eludes me - please enlighten :-)

Better?

Bruce

---

From: Doug Royer <[email-masked]>
Date: Wed, 30 Oct 2002 09:43:18 -0700

> 
> This is how an iTIP COUNTER would be (partly) constucted from my AA to 
> you on my behalf:

(1) ATT-COUNT does not exist in iMIP, so you iTIP client would
     have never added it.

     So given what ALL current iMIP implementaions would send
     something like:

      From: [email-masked]
      To: [email-masked]
      Subject: Counter proposal for that conf. call
      Content-Type: text/calendar; method=counter

      ...
      METHOD:COUNTER
      ...
      ORGANIZER:mailto:[email-masked]
      ATTENDEE;SENT-BY="[email-masked]"
       ;CN="Bruce Kahn/NotesDev/IBM":mailto:[email-masked]
      ATTENDEE;SENT-BY="[email-masked]"
       ;CN="Other Guy/NotesDev/IBM":mailto:[email-masked]
      ATTENDEE:mailto:[email-masked]

     The CUA would add the ATT-COUNTER property to the object by
     using the 'e-mail From address' and set it to:

		ATT-COUNTER:[email-masked]

     What would the LANG, CN, and SENT-BY be set to in the ATT-COUNTER
     property?

> Bruce Kahn                                INet: [email-masked]