Import upstream v0.16.22, stripped

Upstream commit: 474dd0229cb20cf513036619781ed97bd8073c3f
Enterprise-only files removed or emptied: 63
Enterprise-only snippets removed: 117 in 50 files
Dangling module declarations removed: 5
Cargo edits turning enterprise off: 14
Verification: clean
Enterprise feature gates left for rebuilt features: 19 in 18 files

Produced by tools/fork/strip.py. The full report is in docs/fork/strip-reports/ on main.
This commit is contained in:
2026-09-18 10:21:56 -07:00
commit 7dae9b29fd
1650 changed files with 485521 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
[package]
name = "dav-proto"
version = "0.16.22"
edition = "2024"
[dependencies]
trc = { path = "../trc" }
types = { path = "../types" }
hashify = "0.2.9"
quick-xml = "0.41"
calcard = { version = "0.3", features = ["rkyv"] }
mail-parser = { version = "0.11", features = ["full_encoding", "rkyv"] }
hyper = "1.11.1"
chrono = { version = "0.4.45", features = ["serde"], optional = true }
compact_str = "0.10.0"
[dev-dependencies]
calcard = { version = "0.3", features = ["serde", "rkyv"] }
types = { path = "../types", features = ["test_mode"] }
serde = { version = "1.0.229", features = ["derive"] }
serde_json = "1.0.151"
chrono = { version = "0.4.45", features = ["serde"] }
[features]
test_mode = ["chrono"]
enterprise = []
[lints]
workspace = true
@@ -0,0 +1,30 @@
{
"aces": [
{
"principal": {
"Href": "http://www.example.com/users/friends"
},
"invert": false,
"grant_deny": {
"Grant": [
"Read"
]
},
"protected": false,
"inherited": null
},
{
"principal": {
"Href": "http://www.example.com/users/ygoland-so"
},
"invert": false,
"grant_deny": {
"Deny": [
"Read"
]
},
"protected": false,
"inherited": null
}
]
}
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:acl xmlns:D="DAV:">
<D:ace>
<D:principal>
<D:href>http://www.example.com/users/friends</D:href>
</D:principal>
<D:grant><D:read/></D:grant>
</D:ace>
<D:ace>
<D:principal>
<D:href>http://www.example.com/users/ygoland-so</D:href>
</D:principal>
<D:deny><D:read/></D:deny>
</D:ace>
</D:acl>
@@ -0,0 +1,17 @@
{
"aces": [
{
"principal": {
"Href": "http://www.example.com/users/ejw"
},
"invert": false,
"grant_deny": {
"Grant": [
"Write"
]
},
"protected": false,
"inherited": null
}
]
}
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:acl xmlns:D="DAV:" xmlns:F="http://www.example.com/privs/">
<D:ace>
<D:principal>
<D:href>http://www.example.com/users/ejw</D:href>
</D:principal>
<D:grant><D:write/></D:grant>
</D:ace>
</D:acl>
@@ -0,0 +1,17 @@
{
"aces": [
{
"principal": {
"Href": "http://www.example.com/users/esedlar"
},
"invert": true,
"grant_deny": {
"Deny": [
"Write"
]
},
"protected": true,
"inherited": "http://www.example.com/container/"
}
]
}
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:acl xmlns:D="DAV:">
<D:ace>
<D:invert><D:principal>
<D:href>http://www.example.com/users/esedlar</D:href>
</D:principal></D:invert>
<D:deny>
<D:privilege><D:write/></D:privilege>
</D:deny>
<D:protected/>
<D:inherited>
<D:href>http://www.example.com/container/</D:href>
</D:inherited>
</D:ace>
</D:acl>
@@ -0,0 +1,53 @@
{
"aces": [
{
"principal": {
"Href": "http://www.example.com/users/esedlar"
},
"invert": false,
"grant_deny": {
"Grant": [
"Read",
"Write"
]
},
"protected": false,
"inherited": null
},
{
"principal": {
"Property": [
{
"property": {
"type": "WebDav",
"data": {
"type": "Owner"
}
},
"value": "Null"
}
]
},
"invert": false,
"grant_deny": {
"Grant": [
"ReadAcl",
"WriteAcl"
]
},
"protected": false,
"inherited": null
},
{
"principal": "All",
"invert": false,
"grant_deny": {
"Grant": [
"Read"
]
},
"protected": false,
"inherited": null
}
]
}
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:acl xmlns:D="DAV:">
<D:ace>
<D:principal>
<D:href>http://www.example.com/users/esedlar</D:href>
</D:principal>
<D:grant>
<D:privilege><D:read/></D:privilege>
<D:privilege><D:write/></D:privilege>
</D:grant>
</D:ace>
<D:ace>
<D:principal>
<D:property><D:owner/></D:property>
</D:principal>
<D:grant>
<D:privilege><D:read-acl/></D:privilege>
<D:privilege><D:write-acl/></D:privilege>
</D:grant>
</D:ace>
<D:ace>
<D:principal><D:all/></D:principal>
<D:grant>
<D:privilege><D:read/></D:privilege>
</D:grant>
</D:ace>
</D:acl>
@@ -0,0 +1,20 @@
{
"lock_scope": "Shared",
"lock_type": "Write",
"owner": [
{
"type": "ElementStart",
"data": {
"name": "href",
"attrs": "xmlns=\"DAV:\""
}
},
{
"type": "Text",
"data": "http://example.org/~ejw/contact.html"
},
{
"type": "ElementEnd"
}
]
}
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:lockinfo xmlns:D='DAV:'>
<D:lockscope><D:shared/></D:lockscope>
<D:locktype><D:write/></D:locktype>
<D:owner>
<D:href>http://example.org/~ejw/contact.html</D:href>
</D:owner>
</D:lockinfo>
@@ -0,0 +1,20 @@
{
"lock_scope": "Exclusive",
"lock_type": "Write",
"owner": [
{
"type": "ElementStart",
"data": {
"name": "href",
"attrs": "xmlns=\"DAV:\""
}
},
{
"type": "Text",
"data": "http://example.org/~ejw/contact.html"
},
{
"type": "ElementEnd"
}
]
}
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:lockinfo xmlns:D="DAV:">
<D:locktype><D:write/></D:locktype>
<D:lockscope><D:exclusive/></D:lockscope>
<D:owner>
<D:href>http://example.org/~ejw/contact.html</D:href>
</D:owner>
</D:lockinfo>
@@ -0,0 +1,41 @@
{
"is_mkcalendar": false,
"props": [
{
"property": {
"type": "WebDav",
"data": {
"type": "ResourceType"
}
},
"value": {
"ResourceTypes": [
"Collection",
"AddressBook"
]
}
},
{
"property": {
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
"value": {
"String": "Lisa's Contacts"
}
},
{
"property": {
"type": "CardDav",
"data": {
"type": "AddressbookDescription"
}
},
"value": {
"String": "My primary address book."
}
}
]
}
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:mkcol xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:carddav">
<D:set>
<D:prop>
<D:resourcetype>
<D:collection/>
<C:addressbook/>
</D:resourcetype>
<D:displayname>Lisa's Contacts</D:displayname>
<C:addressbook-description xml:lang="en"
>My primary address book.</C:addressbook-description>
</D:prop>
</D:set>
</D:mkcol>
@@ -0,0 +1,369 @@
{
"is_mkcalendar": true,
"props": [
{
"property": {
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
"value": {
"String": "Lisa's Events"
}
},
{
"property": {
"type": "CalDav",
"data": {
"type": "CalendarDescription"
}
},
"value": {
"String": "Calendar restricted to events."
}
},
{
"property": {
"type": "CalDav",
"data": {
"type": "SupportedCalendarComponentSet"
}
},
"value": {
"Components": [
"VEvent"
]
}
},
{
"property": {
"type": "CalDav",
"data": {
"type": "CalendarTimezone"
}
},
"value": {
"ICalendar": {
"components": [
{
"component_type": "VCalendar",
"entries": [
{
"name": {
"type": "Prodid"
},
"params": [],
"values": [
{
"type": "Text",
"data": "-//Example Corp.//CalDAV Client//EN"
}
]
},
{
"name": {
"type": "Version"
},
"params": [],
"values": [
{
"type": "Text",
"data": "2.0"
}
]
}
],
"component_ids": [
1
]
},
{
"component_type": "VTimezone",
"entries": [
{
"name": {
"type": "Tzid"
},
"params": [],
"values": [
{
"type": "Text",
"data": "US-Eastern"
}
]
},
{
"name": {
"type": "LastModified"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": 1987,
"month": 1,
"day": 1,
"hour": 0,
"minute": 0,
"second": 0,
"tz_hour": 0,
"tz_minute": 0,
"tz_minus": false
}
}
]
}
],
"component_ids": [
2,
3
]
},
{
"component_type": "Standard",
"entries": [
{
"name": {
"type": "Dtstart"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": 1967,
"month": 10,
"day": 29,
"hour": 2,
"minute": 0,
"second": 0,
"tz_hour": null,
"tz_minute": null,
"tz_minus": false
}
}
]
},
{
"name": {
"type": "Rrule"
},
"params": [],
"values": [
{
"type": "RecurrenceRule",
"data": {
"freq": "Yearly",
"until": null,
"count": null,
"interval": null,
"bysecond": [],
"byminute": [],
"byhour": [],
"byday": [
{
"ordwk": -1,
"weekday": "Sunday"
}
],
"bymonthday": [],
"byyearday": [],
"byweekno": [],
"bymonth": [
10
],
"bysetpos": [],
"wkst": null,
"rscale": null,
"skip": null
}
}
]
},
{
"name": {
"type": "Tzoffsetfrom"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": null,
"month": null,
"day": null,
"hour": null,
"minute": null,
"second": null,
"tz_hour": 4,
"tz_minute": 0,
"tz_minus": true
}
}
]
},
{
"name": {
"type": "Tzoffsetto"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": null,
"month": null,
"day": null,
"hour": null,
"minute": null,
"second": null,
"tz_hour": 5,
"tz_minute": 0,
"tz_minus": true
}
}
]
},
{
"name": {
"type": "Tzname"
},
"params": [],
"values": [
{
"type": "Text",
"data": "Eastern Standard Time (US & Canada)"
}
]
}
],
"component_ids": []
},
{
"component_type": "Daylight",
"entries": [
{
"name": {
"type": "Dtstart"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": 1987,
"month": 4,
"day": 5,
"hour": 2,
"minute": 0,
"second": 0,
"tz_hour": null,
"tz_minute": null,
"tz_minus": false
}
}
]
},
{
"name": {
"type": "Rrule"
},
"params": [],
"values": [
{
"type": "RecurrenceRule",
"data": {
"freq": "Yearly",
"until": null,
"count": null,
"interval": null,
"bysecond": [],
"byminute": [],
"byhour": [],
"byday": [
{
"ordwk": 1,
"weekday": "Sunday"
}
],
"bymonthday": [],
"byyearday": [],
"byweekno": [],
"bymonth": [
4
],
"bysetpos": [],
"wkst": null,
"rscale": null,
"skip": null
}
}
]
},
{
"name": {
"type": "Tzoffsetfrom"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": null,
"month": null,
"day": null,
"hour": null,
"minute": null,
"second": null,
"tz_hour": 5,
"tz_minute": 0,
"tz_minus": true
}
}
]
},
{
"name": {
"type": "Tzoffsetto"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": null,
"month": null,
"day": null,
"hour": null,
"minute": null,
"second": null,
"tz_hour": 4,
"tz_minute": 0,
"tz_minus": true
}
}
]
},
{
"name": {
"type": "Tzname"
},
"params": [],
"values": [
{
"type": "Text",
"data": "Eastern Daylight Time (US & Canada)"
}
]
}
],
"component_ids": []
}
]
}
}
}
]
}
@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:mkcalendar xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:set>
<D:prop>
<D:displayname>Lisa's Events</D:displayname>
<C:calendar-description xml:lang="en"
>Calendar restricted to events.</C:calendar-description>
<C:supported-calendar-component-set>
<C:comp name="VEVENT"/>
</C:supported-calendar-component-set>
<C:calendar-timezone><![CDATA[BEGIN:VCALENDAR
PRODID:-//Example Corp.//CalDAV Client//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:US-Eastern
LAST-MODIFIED:19870101T000000Z
BEGIN:STANDARD
DTSTART:19671029T020000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:Eastern Standard Time (US & Canada)
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19870405T020000
RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:Eastern Daylight Time (US & Canada)
END:DAYLIGHT
END:VTIMEZONE
END:VCALENDAR
]]></C:calendar-timezone>
</D:prop>
</D:set>
</C:mkcalendar>
@@ -0,0 +1,29 @@
{
"is_mkcalendar": false,
"props": [
{
"property": {
"type": "WebDav",
"data": {
"type": "ResourceType"
}
},
"value": {
"ResourceTypes": [
"Collection"
]
}
},
{
"property": {
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
"value": {
"String": "Special Resource"
}
}
]
}
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:mkcol xmlns:D="DAV:"
xmlns:E="http://example.com/ns/">
<D:set>
<D:prop>
<D:resourcetype>
<D:collection/>
<E:special-resource/>
</D:resourcetype>
<D:displayname>Special Resource</D:displayname>
</D:prop>
</D:set>
</D:mkcol>
@@ -0,0 +1,30 @@
{
"is_mkcalendar": false,
"props": [
{
"property": {
"type": "WebDav",
"data": {
"type": "ResourceType"
}
},
"value": {
"ResourceTypes": [
"Collection",
"Calendar"
]
}
},
{
"property": {
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
"value": {
"String": "Lisa's Events"
}
}
]
}
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:mkcol xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:set>
<D:prop>
<D:resourcetype>
<D:collection/>
<C:calendar/>
</D:resourcetype>
<D:displayname>Lisa's Events</D:displayname>
</D:prop>
</D:set>
</D:mkcol>
@@ -0,0 +1,398 @@
{
"set": [
{
"property": {
"type": "CardDav",
"data": {
"type": "AddressbookDescription"
}
},
"value": {
"String": "Adresses de Oliver Daboo"
}
},
{
"property": {
"type": "CalDav",
"data": {
"type": "CalendarDescription"
}
},
"value": {
"String": "Calendrier de Mathilde Desruisseaux"
}
},
{
"property": {
"type": "CalDav",
"data": {
"type": "SupportedCalendarComponentSet"
}
},
"value": {
"Components": [
"VEvent",
"VTodo"
]
}
},
{
"property": {
"type": "CalDav",
"data": {
"type": "CalendarTimezone"
}
},
"value": {
"ICalendar": {
"components": [
{
"component_type": "VCalendar",
"entries": [
{
"name": {
"type": "Prodid"
},
"params": [],
"values": [
{
"type": "Text",
"data": "-//Example Corp.//CalDAV Client//EN"
}
]
},
{
"name": {
"type": "Version"
},
"params": [],
"values": [
{
"type": "Text",
"data": "2.0"
}
]
}
],
"component_ids": [
1
]
},
{
"component_type": "VTimezone",
"entries": [
{
"name": {
"type": "Tzid"
},
"params": [],
"values": [
{
"type": "Text",
"data": "US-Eastern"
}
]
},
{
"name": {
"type": "LastModified"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": 1987,
"month": 1,
"day": 1,
"hour": 0,
"minute": 0,
"second": 0,
"tz_hour": 0,
"tz_minute": 0,
"tz_minus": false
}
}
]
}
],
"component_ids": [
2,
3
]
},
{
"component_type": "Standard",
"entries": [
{
"name": {
"type": "Dtstart"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": 1967,
"month": 10,
"day": 29,
"hour": 2,
"minute": 0,
"second": 0,
"tz_hour": null,
"tz_minute": null,
"tz_minus": false
}
}
]
},
{
"name": {
"type": "Rrule"
},
"params": [],
"values": [
{
"type": "RecurrenceRule",
"data": {
"freq": "Yearly",
"until": null,
"count": null,
"interval": null,
"bysecond": [],
"byminute": [],
"byhour": [],
"byday": [
{
"ordwk": -1,
"weekday": "Sunday"
}
],
"bymonthday": [],
"byyearday": [],
"byweekno": [],
"bymonth": [
10
],
"bysetpos": [],
"wkst": null,
"rscale": null,
"skip": null
}
}
]
},
{
"name": {
"type": "Tzoffsetfrom"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": null,
"month": null,
"day": null,
"hour": null,
"minute": null,
"second": null,
"tz_hour": 4,
"tz_minute": 0,
"tz_minus": true
}
}
]
},
{
"name": {
"type": "Tzoffsetto"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": null,
"month": null,
"day": null,
"hour": null,
"minute": null,
"second": null,
"tz_hour": 5,
"tz_minute": 0,
"tz_minus": true
}
}
]
},
{
"name": {
"type": "Tzname"
},
"params": [],
"values": [
{
"type": "Text",
"data": "Eastern Standard Time (US & Canada)"
}
]
}
],
"component_ids": []
},
{
"component_type": "Daylight",
"entries": [
{
"name": {
"type": "Dtstart"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": 1987,
"month": 4,
"day": 5,
"hour": 2,
"minute": 0,
"second": 0,
"tz_hour": null,
"tz_minute": null,
"tz_minus": false
}
}
]
},
{
"name": {
"type": "Rrule"
},
"params": [],
"values": [
{
"type": "RecurrenceRule",
"data": {
"freq": "Yearly",
"until": null,
"count": null,
"interval": null,
"bysecond": [],
"byminute": [],
"byhour": [],
"byday": [
{
"ordwk": 1,
"weekday": "Sunday"
}
],
"bymonthday": [],
"byyearday": [],
"byweekno": [],
"bymonth": [
4
],
"bysetpos": [],
"wkst": null,
"rscale": null,
"skip": null
}
}
]
},
{
"name": {
"type": "Tzoffsetfrom"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": null,
"month": null,
"day": null,
"hour": null,
"minute": null,
"second": null,
"tz_hour": 5,
"tz_minute": 0,
"tz_minus": true
}
}
]
},
{
"name": {
"type": "Tzoffsetto"
},
"params": [],
"values": [
{
"type": "PartialDateTime",
"data": {
"year": null,
"month": null,
"day": null,
"hour": null,
"minute": null,
"second": null,
"tz_hour": 4,
"tz_minute": 0,
"tz_minus": true
}
}
]
},
{
"name": {
"type": "Tzname"
},
"params": [],
"values": [
{
"type": "Text",
"data": "Eastern Daylight Time (US & Canada)"
}
]
}
],
"component_ids": []
}
]
}
}
},
{
"property": {
"type": "WebDav",
"data": {
"type": "ResourceType"
}
},
"value": {
"ResourceTypes": [
"Collection",
"AddressBook"
]
}
}
],
"remove": [
{
"type": "CalDav",
"data": {
"type": "CalendarTimezone"
}
},
{
"type": "WebDav",
"data": {
"type": "ResourceType"
}
}
],
"set_first": true
}
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:propertyupdate xmlns:D="DAV:"
xmlns:C="">
<D:set>
<D:prop>
<C:addressbook-description xml:lang="fr-CA"
xmlns:C="urn:ietf:params:xml:ns:carddav"
>Adresses de Oliver Daboo</C:addressbook-description>
<C:calendar-description xml:lang="fr-CA"
xmlns:C="urn:ietf:params:xml:ns:caldav"
>Calendrier de Mathilde Desruisseaux</C:calendar-description>
<C:supported-calendar-component-set
xmlns:C="urn:ietf:params:xml:ns:caldav">
<C:comp name="VEVENT"/>
<C:comp name="VTODO"/>
</C:supported-calendar-component-set>
<C:calendar-timezone
xmlns:C="urn:ietf:params:xml:ns:caldav">BEGIN:VCALENDAR
PRODID:-//Example Corp.//CalDAV Client//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:US-Eastern
LAST-MODIFIED:19870101T000000Z
BEGIN:STANDARD
DTSTART:19671029T020000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:Eastern Standard Time (US &amp; Canada)
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19870405T020000
RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:Eastern Daylight Time (US &amp; Canada)
END:DAYLIGHT
END:VTIMEZONE
END:VCALENDAR
</C:calendar-timezone>
<D:resourcetype xmlns:C="urn:ietf:params:xml:ns:carddav">
<D:collection/>
<C:addressbook/>
</D:resourcetype>
</D:prop>
</D:set>
<D:remove>
<D:prop>
<C:calendar-timezone
xmlns:C="urn:ietf:params:xml:ns:caldav"/>
<D:resourcetype/>
</D:prop>
</D:remove>
</D:propertyupdate>
@@ -0,0 +1,176 @@
{
"set": [
{
"property": {
"type": "DeadProperty",
"data": {
"name": "prop0",
"attrs": "xmlns=\"http://example.com/neon/litmus/\""
}
},
"value": {
"DeadProperty": [
{
"type": "Text",
"data": "value0"
}
]
}
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "prop1",
"attrs": "xmlns=\"http://example.com/neon/litmus/\""
}
},
"value": {
"DeadProperty": [
{
"type": "Text",
"data": "value1"
}
]
}
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "prop2",
"attrs": "xmlns=\"http://example.com/neon/litmus/\""
}
},
"value": {
"DeadProperty": [
{
"type": "Text",
"data": "value2"
}
]
}
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "prop3",
"attrs": "xmlns=\"http://example.com/neon/litmus/\""
}
},
"value": {
"DeadProperty": [
{
"type": "Text",
"data": "value3"
}
]
}
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "prop4",
"attrs": "xmlns=\"http://example.com/neon/litmus/\""
}
},
"value": {
"DeadProperty": [
{
"type": "Text",
"data": "value4"
}
]
}
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "prop5",
"attrs": "xmlns=\"http://example.com/neon/litmus/\""
}
},
"value": {
"DeadProperty": [
{
"type": "Text",
"data": "value5"
}
]
}
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "prop6",
"attrs": "xmlns=\"http://example.com/neon/litmus/\""
}
},
"value": {
"DeadProperty": [
{
"type": "Text",
"data": "value6"
}
]
}
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "prop7",
"attrs": "xmlns=\"http://example.com/neon/litmus/\""
}
},
"value": {
"DeadProperty": [
{
"type": "Text",
"data": "value7"
}
]
}
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "prop8",
"attrs": "xmlns=\"http://example.com/neon/litmus/\""
}
},
"value": {
"DeadProperty": [
{
"type": "Text",
"data": "value8"
}
]
}
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "prop9",
"attrs": "xmlns=\"http://example.com/neon/litmus/\""
}
},
"value": {
"DeadProperty": [
{
"type": "Text",
"data": "value9"
}
]
}
}
],
"remove": [],
"set_first": true
}
@@ -0,0 +1,11 @@
<D:propertyupdate xmlns:D="DAV:"><D:set><D:prop><prop0 xmlns="http://example.com/neon/litmus/">value0</prop0></D:prop></D:set>
<D:set><D:prop><prop1 xmlns="http://example.com/neon/litmus/">value1</prop1></D:prop></D:set>
<D:set><D:prop><prop2 xmlns="http://example.com/neon/litmus/">value2</prop2></D:prop></D:set>
<D:set><D:prop><prop3 xmlns="http://example.com/neon/litmus/">value3</prop3></D:prop></D:set>
<D:set><D:prop><prop4 xmlns="http://example.com/neon/litmus/">value4</prop4></D:prop></D:set>
<D:set><D:prop><prop5 xmlns="http://example.com/neon/litmus/">value5</prop5></D:prop></D:set>
<D:set><D:prop><prop6 xmlns="http://example.com/neon/litmus/">value6</prop6></D:prop></D:set>
<D:set><D:prop><prop7 xmlns="http://example.com/neon/litmus/">value7</prop7></D:prop></D:set>
<D:set><D:prop><prop8 xmlns="http://example.com/neon/litmus/">value8</prop8></D:prop></D:set>
<D:set><D:prop><prop9 xmlns="http://example.com/neon/litmus/">value9</prop9></D:prop></D:set>
</D:propertyupdate>
@@ -0,0 +1,33 @@
{
"type": "Prop",
"data": [
{
"type": "DeadProperty",
"data": {
"name": "bigbox",
"attrs": "xmlns=\"http://ns.example.com/boxschema/\""
}
},
{
"type": "DeadProperty",
"data": {
"name": "author",
"attrs": "xmlns=\"http://ns.example.com/boxschema/\""
}
},
{
"type": "DeadProperty",
"data": {
"name": "DingALing",
"attrs": "xmlns=\"http://ns.example.com/boxschema/\""
}
},
{
"type": "DeadProperty",
"data": {
"name": "Random",
"attrs": "xmlns=\"http://ns.example.com/boxschema/\""
}
}
]
}
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:propfind xmlns:D="DAV:">
<D:prop xmlns:R="http://ns.example.com/boxschema/">
<R:bigbox/>
<R:author/>
<R:DingALing/>
<R:Random/>
</D:prop>
</D:propfind>
@@ -0,0 +1,3 @@
{
"type": "PropName"
}
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8" ?>
<propfind xmlns="DAV:">
<propname/>
</propfind>
@@ -0,0 +1,4 @@
{
"type": "AllProp",
"data": []
}
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:propfind xmlns:D="DAV:">
<D:allprop/>
</D:propfind>
@@ -0,0 +1,11 @@
{
"type": "AllProp",
"data": [
{
"type": "WebDav",
"data": {
"type": "SupportedReportSet"
}
}
]
}
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:propfind xmlns:D="DAV:">
<D:allprop/>
<D:include>
<D:supported-live-property-set/>
<D:supported-report-set/>
</D:include>
</D:propfind>
@@ -0,0 +1,11 @@
{
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "CurrentUserPrincipal"
}
}
]
}
@@ -0,0 +1,5 @@
<d:propfind xmlns:d="DAV:">
<d:prop>
<d:current-user-principal/>
</d:prop>
</d:propfind>
@@ -0,0 +1,17 @@
{
"type": "Prop",
"data": [
{
"type": "Principal",
"data": {
"type": "CalendarHomeSet"
}
},
{
"type": "Principal",
"data": {
"type": "GroupMembership"
}
}
]
}
@@ -0,0 +1,6 @@
<d:propfind xmlns:d="DAV:" xmlns:cal="urn:ietf:params:xml:ns:caldav" xmlns:cs="http://calendarserver.org/ns/">
<d:prop>
<cal:calendar-home-set/>
<d:group-membership/>
</d:prop>
</d:propfind>
@@ -0,0 +1,36 @@
{
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "CurrentUserPrivilegeSet"
}
},
{
"type": "WebDav",
"data": {
"type": "ResourceType"
}
},
{
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
{
"type": "DeadProperty",
"data": {
"name": "calendar-color",
"attrs": "xmlns=\"http://apple.com/ns/ical/\""
}
},
{
"type": "CalDav",
"data": {
"type": "SupportedCalendarComponentSet"
}
}
]
}
@@ -0,0 +1,10 @@
<d:propfind xmlns:d="DAV:" xmlns:apple="http://apple.com/ns/ical/" xmlns:cs="http://calendarserver.org/ns/" xmlns:cal="urn:ietf:params:xml:ns:caldav">
<d:prop>
<d:current-user-privilege-set/>
<d:resourcetype />
<d:displayname />
<apple:calendar-color/>
<cs:source/>
<cal:supported-calendar-component-set/>
</d:prop>
</d:propfind>
@@ -0,0 +1,29 @@
{
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "ResourceType"
}
},
{
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
{
"type": "WebDav",
"data": {
"type": "GetCTag"
}
},
{
"type": "CalDav",
"data": {
"type": "SupportedCalendarComponentSet"
}
}
]
}
@@ -0,0 +1,8 @@
<d:propfind xmlns:d="DAV:" xmlns:cs="http://calendarserver.org/ns/" xmlns:c="urn:ietf:params:xml:ns:caldav">
<d:prop>
<d:resourcetype />
<d:displayname />
<cs:getctag />
<c:supported-calendar-component-set />
</d:prop>
</d:propfind>
@@ -0,0 +1 @@
<D:propfind xmlns:D="DAV:"><D:prop><bar:foo xmlns:bar=""/></D:prop></D:propfind>
@@ -0,0 +1,36 @@
{
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "ResourceType"
}
},
{
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
{
"type": "WebDav",
"data": {
"type": "SyncToken"
}
},
{
"type": "WebDav",
"data": {
"type": "GetCTag"
}
},
{
"type": "DeadProperty",
"data": {
"name": "me-card",
"attrs": "xmlns=\"http://calendarserver.org/ns/\" hello=\"world &amp; test\""
}
}
]
}
@@ -0,0 +1 @@
<d:propfind xmlns:d="DAV:" xmlns:cs="http://calendarserver.org/ns/" xmlns:c="urn:ietf:params:xml:ns:carddav"><d:prop><d:resourcetype /><d:displayname/><d:sync-token></d:sync-token><cs:getctag /><cs:me-card hello="world &amp; test"/></d:prop></d:propfind>
@@ -0,0 +1,128 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [
{
"component": "VCalendar",
"name": {
"type": "Version"
},
"no_value": false
},
{
"component": "VEvent",
"name": {
"type": "Summary"
},
"no_value": false
},
{
"component": "VEvent",
"name": {
"type": "Uid"
},
"no_value": false
},
{
"component": "VEvent",
"name": {
"type": "Dtstart"
},
"no_value": false
},
{
"component": "VEvent",
"name": {
"type": "Dtend"
},
"no_value": false
},
{
"component": "VEvent",
"name": {
"type": "Duration"
},
"no_value": false
},
{
"component": "VEvent",
"name": {
"type": "Rrule"
},
"no_value": false
},
{
"component": "VEvent",
"name": {
"type": "Rdate"
},
"no_value": false
},
{
"component": "VEvent",
"name": {
"type": "Exrule"
},
"no_value": false
},
{
"component": "VEvent",
"name": {
"type": "Exdate"
},
"no_value": false
},
{
"component": "VEvent",
"name": {
"type": "RecurrenceId"
},
"no_value": false
},
{
"component": "VTimezone",
"name": null,
"no_value": false
}
],
"expand": null,
"limit_recurrence": null,
"limit_freebusy": null
}
}
}
]
},
"filters": [
{
"type": "Component",
"comp": [
"VCalendar",
"VEvent"
],
"op": {
"type": "TimeRange",
"data": {
"start": 1136332800,
"end": 1136419200
}
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:calendar-query xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:prop>
<D:getetag/>
<C:calendar-data>
<C:comp name="VCALENDAR">
<C:prop name="VERSION"/>
<C:comp name="VEVENT">
<C:prop name="SUMMARY"/>
<C:prop name="UID"/>
<C:prop name="DTSTART"/>
<C:prop name="DTEND"/>
<C:prop name="DURATION"/>
<C:prop name="RRULE"/>
<C:prop name="RDATE"/>
<C:prop name="EXRULE"/>
<C:prop name="EXDATE"/>
<C:prop name="RECURRENCE-ID"/>
</C:comp>
<C:comp name="VTIMEZONE"/>
</C:comp>
</C:calendar-data>
</D:prop>
<C:filter>
<C:comp-filter name="VCALENDAR">
<C:comp-filter name="VEVENT">
<C:time-range start="20060104T000000Z"
end="20060105T000000Z"/>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,42 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": null,
"limit_recurrence": {
"start": 1136246400,
"end": 1136419200
},
"limit_freebusy": null
}
}
}
]
},
"filters": [
{
"type": "Component",
"comp": [
"VCalendar",
"VEvent"
],
"op": {
"type": "TimeRange",
"data": {
"start": 1136246400,
"end": 1136419200
}
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,17 @@
<C:calendar-query xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:prop>
<C:calendar-data>
<C:limit-recurrence-set start="20060103T000000Z"
end="20060105T000000Z"/>
</C:calendar-data>
</D:prop>
<C:filter>
<C:comp-filter name="VCALENDAR">
<C:comp-filter name="VEVENT">
<C:time-range start="20060103T000000Z"
end="20060105T000000Z"/>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,42 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": {
"start": 1136246400,
"end": 1136419200
},
"limit_recurrence": null,
"limit_freebusy": null
}
}
}
]
},
"filters": [
{
"type": "Component",
"comp": [
"VCalendar",
"VEvent"
],
"op": {
"type": "TimeRange",
"data": {
"start": 1136246400,
"end": 1136419200
}
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:calendar-query xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:prop>
<C:calendar-data>
<C:expand start="20060103T000000Z"
end="20060105T000000Z"/>
</C:calendar-data>
</D:prop>
<C:filter>
<C:comp-filter name="VCALENDAR">
<C:comp-filter name="VEVENT">
<C:time-range start="20060103T000000Z"
end="20060105T000000Z"/>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,42 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": null,
"limit_recurrence": null,
"limit_freebusy": {
"start": 1136160000,
"end": 1136246400
}
}
}
}
]
},
"filters": [
{
"type": "Component",
"comp": [
"VCalendar",
"VFreebusy"
],
"op": {
"type": "TimeRange",
"data": {
"start": 1136160000,
"end": 1136246400
}
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:calendar-query xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:prop>
<C:calendar-data>
<C:limit-freebusy-set start="20060102T000000Z"
end="20060103T000000Z"/>
</C:calendar-data>
</D:prop>
<C:filter>
<C:comp-filter name="VCALENDAR">
<C:comp-filter name="VFREEBUSY">
<C:time-range start="20060102T000000Z"
end="20060103T000000Z"/>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,46 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": null,
"limit_recurrence": null,
"limit_freebusy": null
}
}
}
]
},
"filters": [
{
"type": "Component",
"comp": [
"VCalendar",
"VTodo",
"VAlarm"
],
"op": {
"type": "TimeRange",
"data": {
"start": 1136541600,
"end": 1136628000
}
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,17 @@
<?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="VTODO">
<C:comp-filter name="VALARM">
<C:time-range start="20060106T100000Z"
end="20060107T100000Z"/>
</C:comp-filter>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,51 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": null,
"limit_recurrence": null,
"limit_freebusy": null
}
}
}
]
},
"filters": [
{
"type": "Property",
"comp": [
"VCalendar",
"VEvent"
],
"prop": {
"type": "Uid"
},
"op": {
"type": "TextMatch",
"data": {
"type": "TextMatch",
"match_type": "Contains",
"value": "[email protected]",
"collation": "Octet",
"negate": false
}
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,17 @@
<?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:prop-filter name="UID">
<C:text-match collation="i;octet"
>[email protected]</C:text-match>
</C:prop-filter>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,72 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": null,
"limit_recurrence": null,
"limit_freebusy": null
}
}
}
]
},
"filters": [
{
"type": "Property",
"comp": [
"VCalendar",
"VEvent"
],
"prop": {
"type": "Attendee"
},
"op": {
"type": "TextMatch",
"data": {
"type": "TextMatch",
"match_type": "Contains",
"value": "mailto:[email protected]",
"collation": "AsciiCasemap",
"negate": false
}
}
},
{
"type": "Parameter",
"comp": [
"VCalendar",
"VEvent"
],
"prop": {
"type": "Attendee"
},
"param": "Partstat",
"op": {
"type": "TextMatch",
"data": {
"type": "TextMatch",
"match_type": "Contains",
"value": "NEEDS-ACTION",
"collation": "AsciiCasemap",
"negate": false
}
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,21 @@
<?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:prop-filter name="ATTENDEE">
<C:text-match collation="i;ascii-casemap"
>mailto:[email protected]</C:text-match>
<C:param-filter name="PARTSTAT">
<C:text-match collation="i;ascii-casemap"
>NEEDS-ACTION</C:text-match>
</C:param-filter>
</C:prop-filter>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,41 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": null,
"limit_recurrence": null,
"limit_freebusy": null
}
}
}
]
},
"filters": [
{
"type": "Component",
"comp": [
"VCalendar",
"VEvent"
],
"op": {
"type": "Exists"
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,14 @@
<?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:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,64 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": null,
"limit_recurrence": null,
"limit_freebusy": null
}
}
}
]
},
"filters": [
{
"type": "Property",
"comp": [
"VCalendar",
"VTodo"
],
"prop": {
"type": "Completed"
},
"op": {
"type": "Undefined"
}
},
{
"type": "Property",
"comp": [
"VCalendar",
"VTodo"
],
"prop": {
"type": "Status"
},
"op": {
"type": "TextMatch",
"data": {
"type": "TextMatch",
"match_type": "Contains",
"value": "CANCELLED",
"collation": "AsciiCasemap",
"negate": true
}
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,20 @@
<?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="VTODO">
<C:prop-filter name="COMPLETED">
<C:is-not-defined/>
</C:prop-filter>
<C:prop-filter name="STATUS">
<C:text-match
negate-condition="yes">CANCELLED</C:text-match>
</C:prop-filter>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,52 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": null,
"limit_recurrence": null,
"limit_freebusy": null
}
}
}
]
},
"filters": [
{
"type": "Property",
"comp": [
"VCalendar",
"VEvent"
],
"prop": {
"type": "Other",
"data": "X-ABC-GUID"
},
"op": {
"type": "TextMatch",
"data": {
"type": "TextMatch",
"match_type": "Contains",
"value": "ABC",
"collation": "AsciiCasemap",
"negate": false
}
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,17 @@
<?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:prop-filter name="X-ABC-GUID">
<C:text-match>ABC</C:text-match>
</C:prop-filter>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,33 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
}
]
},
"filters": [
{
"type": "Component",
"comp": [
"VCalendar",
"VEvent"
],
"op": {
"type": "TimeRange",
"data": {
"start": 1094083200,
"end": 1094169600
}
}
}
],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:calendar-query xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:prop>
<D:getetag/>
</D:prop>
<C:filter>
<C:comp-filter name="VCALENDAR">
<C:comp-filter name="VEVENT">
<C:time-range start="20040902T000000Z"
end="20040903T000000Z"/>
</C:comp-filter>
</C:comp-filter>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,30 @@
{
"type": "CalendarQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": null,
"limit_recurrence": null,
"limit_freebusy": null
}
}
}
]
},
"filters": [],
"timezone": {
"type": "None"
}
}
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:calendar-query xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:prop>
<D:getetag/>
<C:calendar-data/>
</D:prop>
<C:filter>
<C:comp-filter name="VCALENDAR"/>
</C:filter>
</C:calendar-query>
@@ -0,0 +1,30 @@
{
"type": "CalendarMultiGet",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CalDav",
"data": {
"type": "CalendarData",
"data": {
"properties": [],
"expand": null,
"limit_recurrence": null,
"limit_freebusy": null
}
}
}
]
},
"hrefs": [
"/bernard/work/abcd1.ics",
"/bernard/work/mtg1.ics"
]
}
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:calendar-multiget xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:prop>
<D:getetag/>
<C:calendar-data/>
</D:prop>
<D:href>/bernard/work/abcd1.ics</D:href>
<D:href>/bernard/work/mtg1.ics</D:href>
</C:calendar-multiget>
@@ -0,0 +1,82 @@
{
"type": "AddressbookQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CardDav",
"data": {
"type": "AddressData",
"data": {
"properties": [
{
"group": null,
"name": {
"type": "Version"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Uid"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Nickname"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Email"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Fn"
},
"no_value": false
}
]
}
}
}
]
},
"filters": [
{
"type": "Property",
"comp": null,
"prop": {
"name": {
"type": "Nickname"
},
"group": null
},
"op": {
"type": "TextMatch",
"data": {
"type": "TextMatch",
"match_type": "Equals",
"value": "me",
"collation": "UnicodeCasemap",
"negate": false
}
}
}
],
"limit": null
}
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:addressbook-query xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:carddav">
<D:prop>
<D:getetag/>
<C:address-data>
<C:prop name="VERSION"/>
<C:prop name="UID"/>
<C:prop name="NICKNAME"/>
<C:prop name="EMAIL"/>
<C:prop name="FN"/>
</C:address-data>
</D:prop>
<C:filter>
<C:prop-filter name="NICKNAME">
<C:text-match collation="i;unicode-casemap"
match-type="equals"
>me</C:text-match>
</C:prop-filter>
</C:filter>
</C:addressbook-query>
@@ -0,0 +1,105 @@
{
"type": "AddressbookQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CardDav",
"data": {
"type": "AddressData",
"data": {
"properties": [
{
"group": null,
"name": {
"type": "Version"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Uid"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Nickname"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Email"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Fn"
},
"no_value": false
}
]
}
}
}
]
},
"filters": [
{
"type": "AnyOf"
},
{
"type": "Property",
"comp": null,
"prop": {
"name": {
"type": "Fn"
},
"group": null
},
"op": {
"type": "TextMatch",
"data": {
"type": "TextMatch",
"match_type": "Contains",
"value": "daboo",
"collation": "UnicodeCasemap",
"negate": false
}
}
},
{
"type": "Property",
"comp": null,
"prop": {
"name": {
"type": "Email"
},
"group": null
},
"op": {
"type": "TextMatch",
"data": {
"type": "TextMatch",
"match_type": "Contains",
"value": "daboo",
"collation": "UnicodeCasemap",
"negate": false
}
}
}
],
"limit": null
}
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:addressbook-query xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:carddav">
<D:prop>
<D:getetag/>
<C:address-data>
<C:prop name="VERSION"/>
<C:prop name="UID"/>
<C:prop name="NICKNAME"/>
<C:prop name="EMAIL"/>
<C:prop name="FN"/>
</C:address-data>
</D:prop>
<C:filter test="anyof">
<C:prop-filter name="FN">
<C:text-match collation="i;unicode-casemap"
match-type="contains"
>daboo</C:text-match>
</C:prop-filter>
<C:prop-filter name="EMAIL">
<C:text-match collation="i;unicode-casemap"
match-type="contains"
>daboo</C:text-match>
</C:prop-filter>
</C:filter>
</C:addressbook-query>
@@ -0,0 +1,40 @@
{
"type": "AddressbookQuery",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
}
]
},
"filters": [
{
"type": "AnyOf"
},
{
"type": "Property",
"comp": null,
"prop": {
"name": {
"type": "Fn"
},
"group": null
},
"op": {
"type": "TextMatch",
"data": {
"type": "TextMatch",
"match_type": "Contains",
"value": "daboo",
"collation": "UnicodeCasemap",
"negate": false
}
}
}
],
"limit": 2
}
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:addressbook-query xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:carddav">
<D:prop>
<D:getetag/>
</D:prop>
<C:filter test="anyof">
<C:prop-filter name="FN">
<C:text-match collation="i;unicode-casemap"
match-type="contains"
>daboo</C:text-match>
</C:prop-filter>
</C:filter>
<C:limit>
<C:nresults>2</C:nresults>
</C:limit>
</C:addressbook-query>
@@ -0,0 +1,63 @@
{
"type": "AddressbookMultiGet",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CardDav",
"data": {
"type": "AddressData",
"data": {
"properties": [
{
"group": null,
"name": {
"type": "Version"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Uid"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Nickname"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Email"
},
"no_value": false
},
{
"group": null,
"name": {
"type": "Fn"
},
"no_value": false
}
]
}
}
}
]
},
"hrefs": [
"/home/bernard/addressbook/vcf102.vcf",
"/home/bernard/addressbook/vcf1.vcf"
]
}
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:addressbook-multiget xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:carddav">
<D:prop>
<D:getetag/>
<C:address-data>
<C:prop name="VERSION"/>
<C:prop name="UID"/>
<C:prop name="NICKNAME"/>
<C:prop name="EMAIL"/>
<C:prop name="FN"/>
</C:address-data>
</D:prop>
<D:href>/home/bernard/addressbook/vcf102.vcf</D:href>
<D:href>/home/bernard/addressbook/vcf1.vcf</D:href>
</C:addressbook-multiget>
@@ -0,0 +1,26 @@
{
"type": "AddressbookMultiGet",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
},
{
"type": "CardDav",
"data": {
"type": "AddressData",
"data": {
"properties": []
}
}
}
]
},
"hrefs": [
"/home/bernard/addressbook/vcf3.vcf"
]
}
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<C:addressbook-multiget xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:carddav">
<D:prop>
<D:getetag/>
<C:address-data content-type='text/vcard' version='4.0'/>
</D:prop>
<D:href>/home/bernard/addressbook/vcf3.vcf</D:href>
</C:addressbook-multiget>
@@ -0,0 +1,17 @@
{
"type": "SyncCollection",
"sync_token": "abc",
"properties": {
"type": "Prop",
"data": [
{
"type": "WebDav",
"data": {
"type": "GetETag"
}
}
]
},
"depth": "Infinity",
"limit": 9
}
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:sync-collection xmlns:D="DAV:">
<D:sync-token>abc</D:sync-token>
<D:sync-level>infinite</D:sync-level>
<D:limit><D:nresults>9</D:nresults></D:limit>
<D:prop>
<D:getetag/>
</D:prop>
</D:sync-collection>
@@ -0,0 +1,11 @@
{
"type": "AclPrincipalPropSet",
"properties": [
{
"type": "WebDav",
"data": {
"type": "DisplayName"
}
}
]
}
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:acl-principal-prop-set xmlns:D="DAV:">
<D:prop>
<D:displayname/>
</D:prop>
</D:acl-principal-prop-set>
@@ -0,0 +1,14 @@
{
"type": "PrincipalMatch",
"principal_properties": {
"Properties": [
{
"type": "WebDav",
"data": {
"type": "Owner"
}
}
]
},
"properties": []
}
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:principal-match xmlns:D="DAV:">
<D:principal-property>
<D:owner/>
</D:principal-property>
</D:principal-match>
@@ -0,0 +1,61 @@
{
"type": "PrincipalPropertySearch",
"property_search": [
{
"property": {
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
"match_": "doE"
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "title",
"attrs": "xmlns=\"http://www.example.com/ns/\""
}
},
"match_": "Sales"
}
],
"properties": [
{
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
{
"type": "DeadProperty",
"data": {
"name": "department",
"attrs": "xmlns=\"http://www.example.com/ns/\""
}
},
{
"type": "DeadProperty",
"data": {
"name": "phone",
"attrs": "xmlns=\"http://www.example.com/ns/\""
}
},
{
"type": "DeadProperty",
"data": {
"name": "office",
"attrs": "xmlns=\"http://www.example.com/ns/\""
}
},
{
"type": "DeadProperty",
"data": {
"name": "salary",
"attrs": "xmlns=\"http://www.example.com/ns/\""
}
}
],
"apply_to_principal_collection_set": false
}
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:principal-property-search xmlns:D="DAV:">
<D:property-search>
<D:prop>
<D:displayname/>
</D:prop>
<D:match>doE</D:match>
</D:property-search>
<D:property-search>
<D:prop xmlns:B="http://www.example.com/ns/">
<B:title/>
</D:prop>
<D:match>Sales</D:match>
</D:property-search>
<D:prop xmlns:B="http://www.example.com/ns/">
<D:displayname/>
<B:department/>
<B:phone/>
<B:office/>
<B:salary/>
</D:prop>
</D:principal-property-search>
@@ -0,0 +1,3 @@
{
"type": "PrincipalSearchPropertySet"
}
@@ -0,0 +1,3 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:principal-search-property-set xmlns:D="DAV:"/>
@@ -0,0 +1,45 @@
{
"type": "ExpandProperty",
"properties": [
{
"property": {
"type": "DeadProperty",
"data": {
"name": "version-history",
"attrs": "name=\"version-history\""
}
},
"depth": 0
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "version-set",
"attrs": "name=\"version-set\""
}
},
"depth": 1
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "creator-displayname",
"attrs": "name=\"creator-displayname\""
}
},
"depth": 2
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "activity-set",
"attrs": "name=\"activity-set\""
}
},
"depth": 2
}
]
}
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:expand-property xmlns:D="DAV:">
<D:property name="version-history">
<D:property name="version-set">
<D:property name="creator-displayname"/>
<D:property name="activity-set"/>
</D:property>
</D:property>
</D:expand-property>
@@ -0,0 +1,83 @@
{
"type": "ExpandProperty",
"properties": [
{
"property": {
"type": "DeadProperty",
"data": {
"name": "calendar-proxy-read-for",
"attrs": "name=\"calendar-proxy-read-for\" namespace=\"\nhttp://calendarserver.org/ns/\""
}
},
"depth": 0
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "email-address-set",
"attrs": "name=\"email-address-set\"\nnamespace=\"http://calendarserver.org/ns/\""
}
},
"depth": 1
},
{
"property": {
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
"depth": 1
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "calendar-user-address-set",
"attrs": "name=\"calendar-user-address-set\"\nnamespace=\"urn:ietf:params:xml:ns:caldav\""
}
},
"depth": 1
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "calendar-proxy-write-for",
"attrs": "name=\"calendar-proxy-write-for\"\nnamespace=\"http://calendarserver.org/ns/\""
}
},
"depth": 0
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "email-address-set",
"attrs": "name=\"email-address-set\" namespace=\"http://calendarserver.org/ns/\""
}
},
"depth": 1
},
{
"property": {
"type": "WebDav",
"data": {
"type": "DisplayName"
}
},
"depth": 1
},
{
"property": {
"type": "DeadProperty",
"data": {
"name": "calendar-user-address-set",
"attrs": "name=\"calendar-user-address-set\"\nnamespace=\"urn:ietf:params:xml:ns:caldav\""
}
},
"depth": 1
}
]
}
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?><A:expand-property
xmlns:A="DAV:"><A:property name="calendar-proxy-read-for" namespace="
http://calendarserver.org/ns/"><A:property name="email-address-set"
namespace="http://calendarserver.org/ns/"/><A:property name="displayname"
namespace="DAV:"/><A:property name="calendar-user-address-set"
namespace="urn:ietf:params:xml:ns:caldav"/></A:property><A:property
name="calendar-proxy-write-for"
namespace="http://calendarserver.org/ns/"><A:property
name="email-address-set" namespace="http://calendarserver.org/ns/"/><A:property
name="displayname" namespace="DAV:"/><A:property
name="calendar-user-address-set"
namespace="urn:ietf:params:xml:ns:caldav"/></A:property></A:expand-property>
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:error xmlns:D="DAV:">
<D:lock-token-submitted>
<D:href>/locked/</D:href>
</D:lock-token-submitted>
</D:error>
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:multistatus xmlns:D="DAV:">
<D:response>
<D:href>http://www.example.com/file</D:href>
<D:propstat>
<D:prop>
<D:displayname>Box type A</D:displayname>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
<D:propstat>
<D:prop><D:displayname>Box type B</D:displayname></D:prop>
<D:status>HTTP/1.1 403 Forbidden</D:status>
<D:responsedescription>The user does not have access to the DingALing property.</D:responsedescription>
</D:propstat>
</D:response>
<D:responsedescription>There has been an access violation error.</D:responsedescription>
</D:multistatus>
@@ -0,0 +1,50 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:multistatus xmlns:D="DAV:">
<D:response>
<D:href>/container/</D:href>
<D:propstat>
<D:prop>
<D:creationdate>1997-12-02T01:42:21Z</D:creationdate>
<D:displayname>Example collection</D:displayname>
<D:resourcetype><D:collection/></D:resourcetype>
<D:supportedlock>
<D:lockentry>
<D:lockscope><D:exclusive/></D:lockscope>
<D:locktype><D:write/></D:locktype>
</D:lockentry>
<D:lockentry>
<D:lockscope><D:shared/></D:lockscope>
<D:locktype><D:write/></D:locktype>
</D:lockentry>
</D:supportedlock>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
</D:response>
<D:response>
<D:href>/container/front.html</D:href>
<D:propstat>
<D:prop>
<D:creationdate>1997-12-02T02:27:21Z</D:creationdate>
<D:displayname>Example HTML resource</D:displayname>
<D:getcontentlength>4525</D:getcontentlength>
<D:getcontenttype>text/html</D:getcontenttype>
<D:getetag>"zzyzx"</D:getetag>
<D:getlastmodified
>Mon, 12 Jan 1998 09:25:56 GMT</D:getlastmodified>
<D:resourcetype/>
<D:supportedlock>
<D:lockentry>
<D:lockscope><D:exclusive/></D:lockscope>
<D:locktype><D:write/></D:locktype>
</D:lockentry>
<D:lockentry>
<D:lockscope><D:shared/></D:lockscope>
<D:locktype><D:write/></D:locktype>
</D:lockentry>
</D:supportedlock>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
</D:response>
</D:multistatus>
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8" ?>
<d:multistatus xmlns:d="DAV:">
<d:response>
<d:href>http://www.example.com/container/resource3</d:href>
<d:status>HTTP/1.1 423 Locked</d:status>
<d:error><d:lock-token-submitted/></d:error>
</d:response>
</d:multistatus>
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8" ?>
<D:prop xmlns:D="DAV:">
<D:lockdiscovery>
<D:activelock>
<D:lockscope><D:exclusive/></D:lockscope>
<D:locktype><D:write/></D:locktype>
<D:depth>infinity</D:depth>
<D:owner>
<D:href>http://example.org/~ejw/contact.html</D:href>
</D:owner>
<D:timeout>Second-604800</D:timeout>
<D:locktoken>
<D:href
>urn:uuid:e71d4fae-5dec-22d6-fea5-00a0c91e6be4</D:href>
</D:locktoken>
<D:lockroot>
<D:href
>http://example.com/workspace/webdav/proposal.doc</D:href>
</D:lockroot>
</D:activelock>
</D:lockdiscovery>
</D:prop>

Some files were not shown because too many files have changed in this diff Show More