PureXML/Sources/Schema
Mihaela Mihaljevic 2b7138ab61 feat(schema): XSD namespace qualification and xs:all constraints
Make XSD validation namespace-aware and enforce the form defaults and
xs:all structural constraints that were previously ignored:

- targetNamespace is tracked: a schema's global elements are in its
  target namespace, and an instance's root element must be in it.
- elementFormDefault / attributeFormDefault (and per-declaration form)
  qualify local element and attribute declarations. The content-model
  matcher already compares namespace URIs, so qualified declarations
  now match only same-namespace instance nodes; attribute matching
  became namespace-aware too.
- xs:all groups are checked at compile time: every member must be an
  element occurring at most once, the group may occur at most once, and
  nested model groups inside an all are rejected (a SchemaError).

When a schema has no target namespace the stamping is a no-op, so
unqualified schemas validate exactly as before.

Cross-namespace type references through xs:import resolve by local name
only; full multi-namespace type tables are not modeled.

Closes #78
2026-06-08 14:24:17 +02:00
..
BuiltinType.swift
ComplexType.swift feat(schema): XSD wildcards and list built-in datatypes 2026-06-08 13:53:22 +02:00
ComplexValidator.swift feat(schema): XSD namespace qualification and xs:all constraints 2026-06-08 14:24:17 +02:00
ComplexValidatorDerivation.swift feat(schema): XSD derivation control (abstract, block, final, redefine) 2026-06-08 14:14:23 +02:00
ComplexValidatorHelpers.swift feat(schema): XSD namespace qualification and xs:all constraints 2026-06-08 14:24:17 +02:00
ContentMatcher.swift feat(schema): XSD wildcards and list built-in datatypes 2026-06-08 13:53:22 +02:00
DateTimeParser.swift
DateTimeValue.swift
DecimalValue.swift
DerivationMethod.swift feat(schema): XSD derivation control (abstract, block, final, redefine) 2026-06-08 14:14:23 +02:00
IdentityConstraint.swift
IdentityValidator.swift refactor(validation): migrate XSD validation onto the framework 2026-06-08 12:43:20 +02:00
Lexical.swift
Primitive.swift
RelaxNGCompactLexer.swift feat(relaxng): add compact syntax (RNC) and include/externalRef 2026-06-08 09:13:09 +02:00
RelaxNGCompactParser.swift feat(relaxng): add compact syntax (RNC) and include/externalRef 2026-06-08 09:13:09 +02:00
RelaxNGDerivative.swift
RelaxNGParser.swift feat(relaxng): add compact syntax (RNC) and include/externalRef 2026-06-08 09:13:09 +02:00
RelaxNGPattern.swift
RelaxNGSchema.swift feat(relaxng): add compact syntax (RNC) and include/externalRef 2026-06-08 09:13:09 +02:00
SchemaDocument.swift feat(schema): XSD namespace qualification and xs:all constraints 2026-06-08 14:24:17 +02:00
SimpleType.swift
TypeDerivation.swift feat(schema): XSD derivation control (abstract, block, final, redefine) 2026-06-08 14:14:23 +02:00
XSDCompletions.swift feat(schema): XSD wildcards and list built-in datatypes 2026-06-08 13:53:22 +02:00
XSDComplexContent.swift feat(schema): XSD derivation control (abstract, block, final, redefine) 2026-06-08 14:14:23 +02:00
XSDContext.swift feat(schema): XSD namespace qualification and xs:all constraints 2026-06-08 14:24:17 +02:00
XSDDerivation.swift feat(schema): XSD namespace qualification and xs:all constraints 2026-06-08 14:24:17 +02:00
XSDParser.swift feat(schema): XSD namespace qualification and xs:all constraints 2026-06-08 14:24:17 +02:00
XSDSimpleParser.swift feat(schema): XSD wildcards and list built-in datatypes 2026-06-08 13:53:22 +02:00
XSDValidations.swift feat(schema): XSD derivation control (abstract, block, final, redefine) 2026-06-08 14:14:23 +02:00
XSDWildcardParser.swift feat(schema): XSD derivation control (abstract, block, final, redefine) 2026-06-08 14:14:23 +02:00