Я хотел бы получить события из календаря, которые находятся в заданном диапазоне И ТАКЖЕ соответствуют одному другому свойству, но, похоже, что caldav делает or
между этими двумя или полностью игнорирует другое .
Пример запроса:
<?xml version="1.0" encoding="utf-8" ?>
<C:calendar-query xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:prop xmlns:D="DAV:">
<D:getetag/>
<C:calendar-data />
</D:prop>
<C:filter>
<C:comp-filter name="VCALENDAR">
<C:comp-filter name="VEVENT">
<C:time-range start="19000323T064000Z" end="20400323T194000Z" />
<C:prop-filter name="DESCRIPTION">
<C:text-match collation="i;ascii-casemap">Text to match</C:text-match>
</C:prop-filter>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
К сожалению, prop-filter
игнорируется, и возвращаются все события в диапазоне дат (здесь специально указан огромный диапазон). Есть ли способ объединить два фильтра?