# Parser Compatibility Notes ## XML `fast-xml-parser` is used for DAV XML parsing and serialization. The compatibility helper parses with `preserveOrder`, keeps qualified names and namespace declarations, disables entity processing, rejects `DOCTYPE` and `ENTITY` declarations before parsing, and stores dead-property XML as the original fragment. ## iCalendar and vCard No additional iCalendar, recurrence, or vCard parser dependency is selected at the foundation stage. The npm ecosystem options reviewed during the compatibility check did not justify adding another protocol parser before the storage/report implementation. Calendar and address book storage now use bounded local parsers for the v1 surface. The iCalendar parser accepts a single `VCALENDAR` with one `VEVENT`, `VTODO`, or `VJOURNAL`, validates UID/component structure, normalizes UTF-8/CRLF, and enforces configured recurrence bounds. The vCard parser accepts one `VCARD`, requires UID and VERSION 3.0 or 4.0, normalizes UTF-8/CRLF, and keeps body storage bounded by configuration.