Rich text namespace resources

The bounded XHTML decoder stores each namespace declaration on its declaring element and resolves inherited bindings through parent scopes, avoiding repeated copies of inherited namespace arrays for every child

Default namespace inheritance, empty default undeclaration, prefix shadowing, sibling isolation, expanded attribute uniqueness and the implicit xml binding retain their existing behavior

The supported XHTML profile still validates the resolved element namespace, so a foreign namespace or an undeclared prefix cannot bypass element validation

THPDFHeadlessRichTextDecodeOptions.MaxNodes continues to count parsed objects using its established rules, while MaxCodeUnits, MaxTotalCodeUnits, MaxDepth and MaxRuns retain their meanings

The resource change supports existing legal XML inputs without introducing a smaller input profile or counting inherited namespace bindings as newly parsed nodes

Standard FDF rich values imported through the forms API use the same decoder and the caller's configured working limits, including forms.memoryBytes

A successful import saves the field value, canonical rich XML and actual appearance through the existing transaction; cancellation, output callback failure and budget rejection retain the committed document state

Canonical rich XML preserves the decoded rich value and styles rather than the original lexical namespace declarations or empty span markup

See rich text run spacing for authored run semantics and Windows form data exchange for transaction behavior

The normal Tests/Linux/RichTextNamespaces consumers cover namespace resolution, original node and depth boundaries, sampled cancellation and retry, heap growth and actual callback import rollback