The CALDAV spec has a yes/no option rather than boolean. The CALDAV:allprop XML element can be used when the client wants all properties of components returned by a calendaring REPORT request. The "name" attribute specifies the name of the calendar property to return (e.g., ATTENDEE). The "novalue" attribute can be used by clients to request that the actual value of the property not be returned (if the "novalue" attribute is set to "yes"). In that case, the server will return just the iCalendar property name and any iCalendar parameters and a trailing ":" without the subsequent value data. When used in an address book REPORT request, the CARDDAV:address-data XML element specifies which parts of address object resources need to be returned in the response. If the CARDDAV:address-data XML element doesn't contain any CARDDAV:prop elements, address object resources will be returned in their entirety. Additionally a media type and version can be specified to request that the server return the data in that format if possible. Finally, when used in an address book REPORT response, the CARDDAV:address-data XML element specifies the content of a address object resource. Given that XML parsers normalize the two-character sequence CRLF (US-ASCII decimal 13 and US-ASCII decimal 10) to a single LF character (US-ASCII decimal 10), the CR character (US-ASCII decimal 13) MAY be omitted in address object resources specified in the CARDDAV:address-data XML element. Furthermore, address object resources specified in the CARDDAV: address-data XML element MAY be invalid per their media type specification if the CARDDAV:address-data XML element part of the address book REPORT request did not specify required vCard properties (e.g., UID, etc.) or specified a CARDDAV:prop XML element with the "novalue" attribute set to "yes". NOTE: This schema type only applies to address-data used in CalDAV addressbook-query requests. The response - with String content is not covered here as it requires mixed content. The CALDAV:text-match XML element specifies text used for a substring match against the property or parameter value specified in a calendaring REPORT request. The "collation" attribute is used to select the collation that the server MUST use for character string matching. In the absence of this attribute, the server MUST use the "i;ascii-casemap" collation. The "negate-condition" attribute is used to indicate that this test returns a match if the text matches when the attribute value is set to "no", or return a match if the text does not match, if the attribute value is set to "yes". For example, this can be used to match components with a STATUS property not set to CANCELLED. The CALDAV:is-not-defined XML element specifies that a match occurs if the enclosing component, property, or parameter value specified in a calendaring REPORT request does not exist in the calendar data being tested. The CALDAV:param-filter XML element specifies a query targeted at a specific calendar property parameter (e.g., PARTSTAT) in the scope of the calendar property on which it is defined. A calendar property parameter is said to match a CALDAV: param-filter if: * The CALDAV:param-filter XML element is empty and a parameter of the type specified by the "name" attribute exists on the calendar property being examined; or: * The CALDAV:param-filter XML element contains a CALDAV:is-not- defined XML element and no parameter of the type specified by the "name" attribute exists on the calendar property being examined; The CALDAV:prop-filter XML element specifies a query targeted at a specific calendar property (e.g., CATEGORIES) in the scope of the enclosing calendar component. A calendar property is said to match a CALDAV:prop-filter if: * The CALDAV:prop-filter XML element is empty and a property of the type specified by the "name" attribute exists in the enclosing calendar component; or: * The CALDAV:prop-filter XML element contains a CALDAV:is-not- defined XML element and no property of the type specified by the "name" attribute exists in the enclosing calendar component; or: * The CALDAV:prop-filter XML element contains a CALDAV:time-range XML element and the property value overlaps the specified time range, and all specified CALDAV:param-filter child XML elements also match the targeted property; or: * The CALDAV:prop-filter XML element contains a CALDAV:text-match XML element and the property value matches it, and all specified CALDAV:param-filter child XML elements also match the targeted property; The "filter" element specifies the search filter used to match address objects that should be returned by a report. The "test" attribute specifies whether any (logical OR) or all (logical AND) of the prop-filter tests needs to match in order for the overall filter to match.