Continues incorporating every schema-validity check into the Validator framework (Rules/universal/validation-rules.md) rather than ad-hoc parse-pipeline throws. - checkRedefine (src-redefine.5: a redefined type restricts or extends itself) becomes the pre-compile Validation redefinitionsDeriveFromThemselves; redefineDerivationErrors returns findings instead of throwing. - checkAllGroups is removed entirely: every check it made is already produced by Validations -- "a member must be an element" by schemaStructureValid (allowedChildren[all]), and the occurrence limits by allGroupLimitedErrors (cos-all-limited.2). Verified redundant and not load-bearing: an empirical probe with the calls removed left invalid-schemas-accepted at 81 unchanged, the fuzz suite's "compile and validation never crash or hang" still passes (the NFA builder's own guards hold), and false positives stayed 0. compileRule is now internal so composition Validations can live in their own file (SchemaCompositionValidations.swift). Both new pre-compile rules are pinned in ValidationConfigurationTests. The pre-existing public SchemaError.invalidAllGroup case is kept (released API) though no longer thrown. No bucket change (invalid-schemas-accepted 81, valid-schemas-rejected 0); full suite + fuzz pass. |
||
|---|---|---|
| .. | ||
| Canonical | ||
| Catalog | ||
| Emitting | ||
| HTML | ||
| Model | ||
| Parsing | ||
| Pattern | ||
| Regex | ||
| Schema | ||
| Stream | ||
| Validation | ||
| XInclude | ||
| XPath | ||
| XPointer | ||
| XSLT | ||
| API.swift | ||
| Lint.swift | ||
| PureXML.swift | ||
| QuickFix.swift | ||