docs: record #79 RELAX NG work in changelog and refresh test count

Adds the Unreleased changelog entry for the datatypeLibrary resolution,
value-space <value> comparison, nsName subtraction, and compact-syntax
annotations/div/concatenation work, and updates the README suite count to
573 tests in 84 suites.
This commit is contained in:
Mihaela Mihaljevic 2026-06-08 17:45:42 +02:00
parent eff530bde7
commit e0e498c4bb
2 changed files with 14 additions and 1 deletions

View File

@ -9,6 +9,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added
- RELAX NG conformance: `datatypeLibrary`, value-space `<value>`, name-class
subtraction, and compact-syntax breadth (#79). The in-scope `datatypeLibrary`
is now inherited from the nearest ancestor; the default library defines only
`string` and `token`, the W3C XML Schema library defines the full built-in set,
and a type no in-scope library defines is an unknown datatype, so its `<data>`
or `<value>` matches nothing rather than validating silently. A `<value>`
carries its datatype and compares in that type's value space, so `1` equals
`01` and `1.5` equals `1.50`, booleans treat `1`/`true` and `0`/`false` as
equal, and `string`/`token` compare by their whitespace-normalized form. A new
`nsNameExcept` name class backs `<nsName>` with `<except>` and the compact
`prefix:* - name` subtraction. The compact parser also skips `[ … ]`
annotations, treats `div { … }` as transparent grouping, and folds `~` string
concatenation.
- XSLT template parameters and modes (toward full parity, #61). `xsl:param`
declarations (with defaults), `xsl:with-param` on `apply-templates` and
`call-template`, and `mode` on templates and `apply-templates` are now honored:

View File

@ -91,7 +91,7 @@ flowchart TB
PureXML is a working, dependency-free XML library today: parse, emit, validate,
query, and stream documents on macOS, Linux, Windows, and WASM. The test suite
currently runs **506 tests in 69 suites** (`swift test`).
currently runs **573 tests in 84 suites** (`swift test`).
### Shipped (libxml2-aligned surface)