PureXML/Sources
Mihaela Mihaljevic b5fa216a7c feat(validation): streaming DTD validation (reader-driven)
Add PureXML.Validation.StreamingDTDValidator and PureXML.validate(streaming:
dtd:), validating a document against a DTD while it is pulled event by event
(the libxml2 xmlTextReader model), holding only the open-element stack rather
than the whole tree. Each element's content model and attributes are checked
as it closes by applying the exact per-element DTD rules to a shallow element
synthesized from the streamed child names, so streaming and tree validation
agree (a test asserts matching reasons). Errors carry an xmlGetNodePath-style
coding path. RELAX NG/XSD streaming and ID/IDREF streaming remain on #107.

Part of #107, #105
2026-06-09 10:06:55 +02:00
..
Canonical feat(canonical): C14N 2.0 sequential prefix rewrite, QName-aware values, node-set selection (#85) 2026-06-09 04:06:02 +02:00
Catalog feat(catalog): honor group-level prefer override 2026-06-08 18:05:03 +02:00
Emitting feat(emitting): output encoding for UTF and single-byte families 2026-06-09 09:32:39 +02:00
HTML feat(html): vendor the complete WHATWG named entity set (#84) 2026-06-09 07:45:55 +02:00
Model feat(model): first-class doctype/entity-reference/namespace nodes, ownerDocument, adoption (#90) 2026-06-09 03:43:24 +02:00
Parsing feat(emitting): CJK output encodings, closing output-encoding parity 2026-06-09 09:41:28 +02:00
Pattern
Regex feat(regex): Unicode category escapes and character-class subtraction 2026-06-08 15:15:46 +02:00
Schema fix(xsd): locate identity-constraint errors at the offending node 2026-06-09 08:57:33 +02:00
Stream
Validation feat(validation): streaming DTD validation (reader-driven) 2026-06-09 10:06:55 +02:00
XInclude feat(xinclude): range inclusion via XPointer range model (#87) 2026-06-09 04:19:38 +02:00
XPath feat(xpath): eval-time namespace context and XPointer xmlns()/xpath1() schemes 2026-06-08 16:00:15 +02:00
XPointer feat(xpointer): range(), range-to(), and string-range() schemes (#88) 2026-06-09 04:16:23 +02:00
XSLT feat(xslt): document() fragments and base-URI resolution, completing #82 2026-06-09 03:12:49 +02:00
API.swift feat(emitting): output encoding for UTF and single-byte families 2026-06-09 09:32:39 +02:00
Lint.swift feat(editor): unified lint surface merging parse and validation diagnostics 2026-06-08 13:18:29 +02:00
PureXML.swift
QuickFix.swift feat(editor): structured quick-fixes from completions 2026-06-08 13:35:33 +02:00