‏exData XML الأصلي في XFA

مضيف الأحداث العام ينشئ خصائص قيم exData الغائبة ويستورد أبناء XML أجنبية حقيقية إلى نسخ نماذجها الأصلية؛ ومحتوى draw بـ XHTML يصل إلى مستهلك النص الغني في PDF بعد استمرارية XDP الأصلية وإعادة تحميلها

استيراد وقراءة XML

const content = row.label.value.exData;
content.contentType = "text/html";
content.loadXML(
  '<body xmlns="http://www.w3.org/1999/xhtml">' +
  '<p><span style="font-size:18pt;color:#0000FF">Changed</span></p>' +
  '</body>',
  false,
  true
);
const currentXML = content.saveXML();
const readableXML = content.saveXML("pretty");

loadXML(source, ignoreRoot=true, overwrite=false) تقبل سلسلة مستند XML مُشكَّلًا جيدًا وتعيد undefined؛ وignoreRoot تُلحق أبناء الجذر التجميعي، بينما false تُلحق الجذر نفسه

‏Overwrite تستبدل المحتوى القائم قبل الاستيراد؛ وافتراضيها false يُلحق المحتوى بترتيب المستند محفظًا الأبناء المستوردين سابقًا

saveXML() تعيد عنصر exData الحالي ومحتواه بوصفهما إعلان XML بترميز UTF-8 وسلسلة شظية؛ والكلمة الحرفية pretty الاختيارية تُزاحف محتوى العناصر فقط مع حفظ النص المختلط وفراغات CDATA

أسماء العناصر المستوردة وإعلانات namespaces والسمات المؤهلة بـ namespace وUnicode النصي ومراجع المحارف والنص المختلط وCDATA تبقى XML أصليًا؛ ولا يُخزَّن الـ markup بوصفه سلسلة rawValue خامًا

الإنشاء والافتراضيات

خصائص Value تسمح بابن exData واحد متنافيًا مع بقية خيارات القيمة؛ وقيمة draw وابن exData مفقودان يمكن إنشاؤهما واستيرادهما خلال الحدث نفسه

‏exData تقصّر افتراضيًا إلى maxLength=-1 وtransferEncoding=none، مع سمات contentType وhref وid وname وrid وuse وusehref فارغة

مضيف الأحداث لا يكشف واصل قيمة scalar على exData؛ استخدم loadXML وsaveXML لمحتوى XML الأجنبي

القراءات الفورية والهوية والمعاملات

عملية XML أصلية خالصة تتحقق من كل طلب وتسلسله قبل مواصلة تنفيذ السكربت؛ وXML المشوه يُلقي داخل السكربت ويمكن معالجته بـ try/catch دون تغيير المحتوى الحالي

إعادة تشغيل الاستجابات الحتمية تتشارك معاملة السكربت القائمة ولا تنفّذ أي أثر جانبي لـ UI أو ملفات أو شبكة أو نقل

استدعاءات saveXML اللاحقة ترى الاستيرادات الناجحة السابقة وسمات exData الحالية خلال الحدث نفسه؛ والمراجع المحفوظة تحل هوية العقدة الحالية في أحداث لاحقة

فقط النسخة المتكررة المُستهدفة تتلقى محتوى أصليًا، والنسخة الجديدة تهيأ من XML القالب بدلًا من نسخ تجاوز مستورد لنسخة قائمة

جذر مستورد فارغ مع overwrite=true يمسح المحتوى الفعلي ويبقى فارغًا بعد الاستمرارية وإعادة التحميل؛ وهو لا يرجع إلى محتوى القالب

أخطاء السكربت غير المعالجة وفشل النشر الأصلي يستعيدان بايتات XDP الأصلية الدقيقة، بما يشمل كتابات الحقول العادية السابقة وتحويلات XML

الميزانيات والاستهلاك المحفوظ

حدود السكربت تحدد سقوف بايتات XML إدخالًا ومخرجًا وعقد عناصر ونص أصلية وعمقًا وعمليات ووقتًا منقضيًا واستجابات إعادة تشغيل؛ وMaxValueChars للـ widget تحدد سقفًا أيضًا لقيمة XML المنشورة

جسر FPC يحفظ بايتات UTF-8 عبر استجابات XML وقيم أفعال عادية، بما يشمل المحارف المعلَّمة وUnicode التكميلي

محتوى draws بـ XHTML المحفوظ يستخدم سلوك الخط والحجم واللون وCSS المضمّن لدى مستهلك النص الغني القائم؛ وقراء PDF مستقلون يتحققون من نص أول نسخة وتنسيق الاستبدال ومحتوى نسخة جديدة ومسح صريح

أهداف تكامل XML المتبقية

هذا التسليم ينفّذ عمليات محتوى exData؛ وأساليب loadXML/saveXML لأصناف عقد أخرى والاستيراد البنيوي لـ Data DOM وتحويل عقد أجنبية عامة تبقى أهدافًا منفصلة

إعلانات DTD وكتالوجات كيانات مخصصة تبقى غير منفذة؛ والكيانات المعرفة مسبقًا ومراجع المحارف العشرية أو السداسية العشرية مدعومة

تعليقات داخل العناصر وتعليمات المعالجة تبقى أصليةً عبر الاستيراد والقراءات الفورية والحفظ وإعادة التحميل والتراجع؛ والـ markup خارج الجذر على مستوى المستند وجولات XML المعجمية الكاملة تبقيان أهدافًا منفصلة

حل href خارجيًا ونقل exData مرمَّزًا وفرض maxLength ومستهلكو وسائط أجنبية ومظاهر widgets غنية بـ Unicode تبقى أهداف تنفيذ منفصلة

المراجع وواجهات مرتبطة

دلالات الجذر والاستبدال في الاستيراد تتبعان واجهة Element من Adobe XFA; وأسماء XML والمراجع والفراغات تتبع XML 1.0

انظر TXFAEventBinding, TXFAEventActionKind, خصائص النص الغني وبيئة تشغيل XFA التفاعلية