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 |
||
|---|---|---|
| .. | ||
| Fixtures | ||
| CanonicalTests.swift | ||
| CatalogTests.swift | ||
| DTDAttributeTests.swift | ||
| DTDIdentifierTests.swift | ||
| DTDTests.swift | ||
| DTDValidationTests.swift | ||
| EncodingTests.swift | ||
| EntityResolverTests.swift | ||
| HTMLDocumentTests.swift | ||
| HTMLTests.swift | ||
| LintTests.swift | ||
| ModelTests.swift | ||
| NamespaceTests.swift | ||
| ParityEdgeTests.swift | ||
| ParsingTests.swift | ||
| PatternTests.swift | ||
| PushParserTests.swift | ||
| QuickFixTests.swift | ||
| RecoveringReaderTests.swift | ||
| RegexTests.swift | ||
| RelaxNGCompactTests.swift | ||
| RelaxNGTests.swift | ||
| SaveOptionsTests.swift | ||
| SAXTests.swift | ||
| SchemaConformanceTests.swift | ||
| SchematronTests.swift | ||
| SerializerTests.swift | ||
| SourceSpanTests.swift | ||
| TextReaderTests.swift | ||
| TreeNodeTests.swift | ||
| ValidationFrameworkTests.swift | ||
| ValidationTests.swift | ||
| WriterTests.swift | ||
| XIncludeTests.swift | ||
| XMLCharacterTests.swift | ||
| XPathAxisTests.swift | ||
| XPathContextTests.swift | ||
| XPathExpressionTests.swift | ||
| XPathFunctionTests.swift | ||
| XPathTests.swift | ||
| XPointerTests.swift | ||
| XSDCompletionTests2.swift | ||
| XSDComplexTypeTests.swift | ||
| XSDCompositionTests.swift | ||
| XSDDatatypeTests.swift | ||
| XSDDerivationControlTests.swift | ||
| XSDIdentityTests.swift | ||
| XSDImportTests.swift | ||
| XSDNamespaceTests.swift | ||
| XSDSchemaTests.swift | ||
| XSDValueConstraintTests.swift | ||
| XSDWildcardTests.swift | ||
| XSLTParityTests.swift | ||
| XSLTParserTests.swift | ||
| XSLTTests.swift | ||