[calsify] draft-ietf-calext-availability

Ken Murchison <murch@andrew.cmu.edu> Tue, 07 April 2015 20:10 UTC

Return-Path: <murch@andrew.cmu.edu>
X-Original-To: calsify@ietfa.amsl.com
Delivered-To: calsify@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3BE791B3BD8 for <calsify@ietfa.amsl.com>; Tue, 7 Apr 2015 13:10:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.21
X-Spam-Level:
X-Spam-Status: No, score=-4.21 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7TRFjxAMK-kD for <calsify@ietfa.amsl.com>; Tue, 7 Apr 2015 13:10:30 -0700 (PDT)
Received: from smtp.andrew.cmu.edu (SMTP.ANDREW.CMU.EDU [128.2.157.39]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7AD151B3BD6 for <calsify@ietf.org>; Tue, 7 Apr 2015 13:10:30 -0700 (PDT)
Received: from localhost.localdomain (cpe-76-180-151-43.buffalo.res.rr.com [76.180.151.43]) (user=murch mech=PLAIN (0 bits)) by smtp.andrew.cmu.edu (8.14.8/8.14.8) with ESMTP id t37KAS0H001592 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for <calsify@ietf.org>; Tue, 7 Apr 2015 16:10:29 -0400
Message-ID: <552439B4.5090300@andrew.cmu.edu>
Date: Tue, 07 Apr 2015 16:10:28 -0400
From: Ken Murchison <murch@andrew.cmu.edu>
Organization: Carnegie Mellon University
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0
MIME-Version: 1.0
To: Calsify <calsify@ietf.org>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-PMX-Version: 6.0.3.2322014, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2015.4.7.200320
X-SMTP-Spam-Clean: 28% ( SXL_IP_DYNAMIC 3, HTML_00_01 0.05, HTML_00_10 0.05, BODYTEXTP_SIZE_3000_LESS 0, BODY_SIZE_2000_2999 0, BODY_SIZE_5000_LESS 0, BODY_SIZE_7000_LESS 0, DATE_TZ_NA 0, FROM_EDU_TLD 0, NO_URI_FOUND 0, RDNS_GENERIC_POOLED 0, RDNS_POOLED 0, RDNS_RESIDENTIAL 0, RDNS_SUSP 0, RDNS_SUSP_GENERIC 0, RDNS_SUSP_SPECIFIC 0, __CT 0, __CTE 0, __CT_TEXT_PLAIN 0, __HAS_FROM 0, __HAS_MSGID 0, __MIME_TEXT_ONLY 0, __MIME_VERSION 0, __MOZILLA_MSGID 0, __MOZILLA_USER_AGENT 0, __PHISH_SPEAR_STRUCTURE_1 0, __RDNS_POOLED_1 0, __SANE_MSGID 0, __SUBJ_ALPHA_START 0, __TO_MALFORMED_2 0, __USER_AGENT 0)
X-SMTP-Spam-Score: 28%
X-Scanned-By: MIMEDefang 2.74 on 128.2.157.39
Archived-At: <http://mailarchive.ietf.org/arch/msg/calsify/E379jb84tqcCmF3VwsqCzcK3aO4>
Subject: [calsify] draft-ietf-calext-availability
X-BeenThere: calsify@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <calsify.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/calsify>, <mailto:calsify-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/calsify/>
List-Post: <mailto:calsify@ietf.org>
List-Help: <mailto:calsify-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/calsify>, <mailto:calsify-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 07 Apr 2015 20:10:32 -0000

All,

This draft looks pretty good to me, and I already have an implementation 
of most, if not all, of it.

A few comments:

- The current text in Section 4 leaves me unclear as to whether the 
ordering of VAVAILABILITY components by priority means that the expected 
order is:
     0, 1, 2, ... , 8, 9
OR
     0, 9, 8, ... , 2, 1

- The text in Section 5.1.1 (available 8:00AM to 6:00PM, 2 hr event) 
doesn't match the iCalendar data in Appendix A (available 9:00AM to 
6:00PM, 1 hr event) - I'd suggest fixing the iCalendar data to match the 
text since the table in 5.1.1 uses 2 hr blocks of time on even hours

- Since VAVAILABILITY components can be stored in calendar collections, 
do we need to add a section that discusses how it behaves with 
CALDAV:time-range?  Perhaps a new Section 6.2.x such as the following:

    Section 9.9 of [RFC4791] describes how to specify time ranges to
    limit the set of calendar components returned by the server.  This
    specification extends [RFC4791] to describe how to apply time range
    filtering to VAVAILABILITY components.

    A VAVAILABILITY component is said to overlap a given time range if
    the condition for the corresponding component state specified in
    the table below is satisfied.  The conditions depend on the presence
    of the DTSTART, DTEND, and DURATION properties in the AVAILABILITY
    component.  Note that, as specified above, the DTEND value MUST be
    a DATE-TIME value equal to or after the DTSTART value if specified.

    +------------------------------------------------------------+
    | VAVAILABILITY has the DTSTART property?                    |
    |   +--------------------------------------------------------+
    |   | VAVAILABILITY has the DTEND property?                  |
    |   |   +----------------------------------------------------+
    |   |   | VAVAILABILITY has the DURATION property?           |
    |   |   |   +------------------------------------------------+
    |   |   |   | Condition to evaluate                          |
    +---+---+---+------------------------------------------------+
    | Y | Y | N | (start < DTEND  AND  end > DTSTART)            |
    +---+---+---+------------------------------------------------+
    | Y | N | Y | (start < DTSTART+DURATION  AND  end > DTSTART) |
    +---+---+---+------------------------------------------------+
    | Y | N | N | (end > DTSTART)                                |
    +---+---+---+------------------------------------------------+
    | N | Y | N | (start < DTEND)                                |
    +---+---+---+------------------------------------------------+
    | N | N | * | TRUE                                           |
    +---+---+---+------------------------------------------------+

-- 
Kenneth Murchison
Principal Systems Software Engineer
Carnegie Mellon University