[Ietf-caldav] Question about time range filtering.

Cyrus Daboo cyrus at daboo.name
Thu Jul 17 08:18:57 PDT 2008


Hi Daniel,

--On July 17, 2008 4:52:49 PM +0200 Daniel Gomez Brito <dagomez at gmv.com> 
wrote:

> Suppose I do a time-range query that spawns the second Monday. If I'm
> not wrong, the response should be empty because the instance has been
> rescheduled to a Tuesday.
> I'm guessing the process is like this:
>  The server checks the master component, realizes there's an overlapping
> instance and then examines the overridden components to test if the
> overlapping instance has been overridden. If that's the case, then the
> server tests whether the overridden instance impacts the time range and
> acts upon so.
>  In this example, the matching instance has been overridden and it
> doesn't overlap the time interval so the server drops the master
> component because its match is not valid and therefore returns an empty
> response.
> Is this right?

In the case where there are no overlapping instances at all, and thus no 
need to return the master, then yes the result can legitimately be empty 
even if an overridden instance's original time period was within the 
time-range.

I guess the spec could be more explicit on that one case. The algorithm is:

if (any instance overlaps the time-range) then
    return (the master instance,
            any overridden instances occurring in the time-range,
            any overridden instances that originally occurred in the 
time-range)
else
    return (empty result)

-- 
Cyrus Daboo



More information about the Ietf-caldav mailing list