RFC 5545 (iCalendar) defines inter-property interaction rules in prose scattered across hundreds of pages of MUST/SHOULD language in six RFCs. No published, standalone representation of these rules exists in a form suitable for machine consumption. We extract these rules into a formal dependency graph for VEVENT components, expressed as a YAML/JSON specification with 27 properties and 20 edges spanning six edge types. We classify properties into five merge safety categories—safe, dependent, scheduling, immutable, and always-update—that determine whether concurrent edits can be combined without user intervention. We document 25 bugs across 17 calendar projects spanning 8 programming languages where violations of property dependencies are the root cause. The EXDATE type- must-match-DTSTART rule alone accounts for 7+ separate bugs across independent implementations; the RRULE–DTSTART interaction has bugs dating back 13 years. The graph and merge safety classification are published as language-agnostic YAML and JSON artifacts at https://github.com/iCalDAV/ical-dependency-graph.
Ravi Kashyap (Sat,) studied this question.