PureXML/Sources
Mihaela Mihaljevic b80e31d562 feat(schema): a restriction may not relax a required base attribute (cos-ct-derived-ok)
In a complexContent restriction, an attribute the restriction redeclares that the
base type marks use="required" may not be made optional or prohibited. Only
attributes explicitly redeclared that also exist in the base are checked; an
omitted attribute is inherited unchanged. The base reference must resolve to the
schema's own target namespace, and the check stands down for a schema that
composes other documents.

The matching fixed-value clause is deliberately not enforced: it requires
comparing the two fixed values in the attribute type's value space, not lexically
(a list-typed fixed value differing only in whitespace is the same value), so a
string comparison wrongly rejects valid schemas. That clause is left for a later
change (a disclosed under-rejection).

XSTS: invalid schemas accepted 394 to 390, no other bucket raised.
2026-06-15 16:09:02 +02:00
..
Canonical feat(canonical): C14N 1.0 spec-example vectors, three conformance fixes 2026-06-10 08:51:47 +02:00
Catalog
Emitting
HTML feat(html): HTML 4 void elements and the ampersand-brace convention 2026-06-10 16:41:54 +02:00
Model
Parsing feat(xpath,parsing): public streaming surface, linear document-order at scale 2026-06-11 06:06:31 +02:00
Pattern
Regex fix(regex): use the XSD definition of \w and \W 2026-06-13 18:31:07 +02:00
Schema feat(schema): a restriction may not relax a required base attribute (cos-ct-derived-ok) 2026-06-15 16:09:02 +02:00
Stream
Validation refactor(validation): located structured validity findings 2026-06-10 10:45:17 +02:00
XInclude
XPath feat(xpath,xslt,wasm): evaluation budget, tailored collation, WASI runtime proof 2026-06-11 06:26:13 +02:00
XPointer
XSLT fix(schema,regex): bound NFA state explosion and class-subtraction crash; land XSTS baseline 2026-06-13 18:04:25 +02:00
API.swift
Lint.swift
PureXML.swift
QuickFix.swift