原生 XFA 隐藏别名同步

CommitEdit 会为绑定到被变更原生数据节点的每个字段同步既有标量表单值,包括处于 hidden 或 invisible presence、没有可见 widget 的字段

共享值

读取标量值属性可能会顺带创建对应的原生表单值叶子;随后对共享同一数据节点的另一个字段做交互式编辑时,会在校验和计算之前更新该叶子

原生扫描会穿过 subform、area 和 exclGroup 容器遍历模板字段及其实际数据作用域;解析命名 subform 实例时会遵循配置的 ResolveInstanceScope 与 ResolveInstanceProperty 回调

重复出现项彼此独立,除非绑定显式选择了同一个数据节点;扫描不会创建缺失的标量属性,也不会仅为更新一个未物化的别名而分配 form packet

清空编辑会在既有标量叶子中创建显式的空文本节点,Unicode 文本经过原生保存与重新加载后仍然保留

原子工作量上限

扫描会消耗当前事务的操作预算并检查耗时截止期限;遍历最多执行 200000 次扫描操作、下探 64 层

校验失败或工作量超限时,先前的数据集与原生表单值会一并恢复;隐藏别名不会残留部分提交的值

持久化验证

专设的四目标 fixture 覆盖隐藏与不可见别名、可见 widget 读取、重复实例隔离、无名 area 遍历、空值、Unicode、原生重新加载以及字节级精确回滚

由独立的 XML 读取器检查保存后的 XDP 文件与未变化的模板节点;这些证据不声称已覆盖隐藏字段的 Unicode widget 外观生成或计算事件

相关 API

原生标量值 与 交互式 XFA 运行时