原生 XFA XML 註解與處理指令
原生 exData 的 loadXML 與 saveXML 保留元素內的 XML 註解與 processing instructions,包括其順序、字面 payload 與指令目標
原生表示
節點保留 Name=#text,讓既有的元素、SOM、packet 與屬性綁定掃描繼續跳過非元素內容;XMLContentKind 區分文字、註解與指令節點
一般文字與 CDATA 持續計入父節點的彙總 Value;註解與指令不會變成 scalar 欄位值或可見 rich-text runs
Comment := Node.AddComment('retained metadata');
Instruction := Node.AddProcessingInstruction('audit', 'reviewed');
SetText 取代一般文字與 CDATA,同時保留註解與指令子節點;移除非文字子節點不影響文字彙總
持久化與交易
原生 XDP 解析器、寫入器與 packet 指紋在儲存與重新載入之間保留元素內註解與指令;payload 或目標變更會把所屬 packet 標記為已修改
立即的 script 序列化會看到匯入的非文字內容;引擎失敗與原生發布預算都會逐位元組還原原始內容
註解與指令節點消耗 XML 匯入與序列化的節點預算;其 payload 消耗位元組預算與原生 packet 文字限制
實際 PDF 消費
儲存的產生器在 THotPDF.ApplyXFAAsAcroForm 之前重新開啟其 XDP;獨立的 XML、pypdf 與 MuPDF 檢查確認實際原生 payload 仍被儲存,而其標記文字未出現在頁面文字中
既有 rich text、字型、大小與顏色保持可見,複製與清空的 occurrence 保留其既有記載行為
剩餘 XML 目標
此支援涵蓋文件元素內的 markup;根元素之外的文件層級註解與指令、完整的語彙空白保留、其他 node-class XML 方法、Data DOM 結構匯入與 DTD 實體目錄,仍是獨立實作目標
外部參照與完整的外部媒體消費端仍是獨立實作目標