PureXML/Sources
Mihaela Mihaljevic 147d776d21 feat(relaxng): resolve datatypeLibrary and nsName subtraction
Adds a datatypeLibrary-aware datatype resolver to the XML-syntax parser:
the in-scope library is inherited from the nearest ancestor, the default
(empty) library defines only string and token, and the W3C XML Schema
library defines the full built-in set. A type the in-scope library does
not define is an unknown datatype, so the <data>/<value> pattern matches
nothing rather than silently validating.

Adds an nsNameExcept name-class case so nsName with an <except> child
(XML syntax) and prefix:* - name subtraction (compact syntax) narrow a
namespace wildcard. The compact lexer splits prefix:* into a trailing-
colon word plus a star symbol, which the parser now recognizes.

Existing RELAX NG facet tests declared XSD types without the library and
relied on lenient resolution; they now declare the XSD datatypeLibrary,
matching what a conformant processor requires.
2026-06-08 17:21:49 +02:00
..
Canonical feat(parity): C14N 2.0 text trimming, catalog delegation, XPath number formatting 2026-06-08 09:37:16 +02:00
Catalog feat(catalog): SGML Open (TR 9401) catalog format 2026-06-08 17:03:06 +02:00
Emitting feat(emitting): cdataAsText and asciiOnly save options 2026-06-08 16:34:57 +02:00
HTML feat(html): add HTML5 document tree construction with insertion modes 2026-06-08 09:24:11 +02:00
Model feat(model): TreeNode editing helpers (attributes, shallow copy, order, normalize) 2026-06-08 15:19:33 +02:00
Parsing feat(parsing): line-ending normalization and XML 1.1 line terminators 2026-06-08 15:07:21 +02:00
Pattern
Regex feat(regex): Unicode category escapes and character-class subtraction 2026-06-08 15:15:46 +02:00
Schema feat(relaxng): resolve datatypeLibrary and nsName subtraction 2026-06-08 17:21:49 +02:00
Stream
Validation feat(schematron): schema- and pattern-level let 2026-06-08 16:52:16 +02:00
XInclude feat(xinclude): content-negotiation hints, cycle detection, text+fragment 2026-06-08 15:52:18 +02:00
XPath feat(xpath): eval-time namespace context and XPointer xmlns()/xpath1() schemes 2026-06-08 16:00:15 +02:00
XPointer feat(xpath): eval-time namespace context and XPointer xmlns()/xpath1() schemes 2026-06-08 16:00:15 +02:00
XSLT feat(xslt): add xsl:include/import, xsl:output, comment, and processing-instruction 2026-06-08 08:08:38 +02:00
API.swift feat(parsing): surface the XML declaration (version, encoding, standalone) 2026-06-08 14:53:04 +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