Native XFA exData XML

Den generelle event-host opretter fraværende exData value-properties og importerer rigtige fremmede XML-børn i deres native formular-occurrences; XHTML draw-indhold når rich text PDF-consumeren efter native XDP-persistens og -genindlæsning

Import og læsning af 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) accepterer en velformet XML-dokumentstreng og returnerer undefined; ignoreRoot tilføjer den aggregerende rods børn, mens false tilføjer roden selv

Overwrite erstatter eksisterende indhold inden import; dens standard false tilføjer indhold i dokumentrækkefølge og bevarer tidligere importerede børn

saveXML() returnerer det aktuelle exData-element og dets indhold som en UTF-8 XML-deklaration og fragmentstreng; den valgfrie literal pretty indenterer element-kun-indhold, mens blandet tekst og CDATA-whitespace bevares

Importerede elementnavne, namespace-erklæringer, namespace-kvalificerede attributter, literal Unicode, tegnreferencer, blandet tekst og CDATA forbliver native XML; markup gemmes ikke som en plain rawValue-streng

Oprettelse og standarder

Value-properties tillader ét exData-barn, gensidigt udelukkende med de andre value-valg; en manglende draw-værdi og exData-barn kan oprettes og importeres under samme event

exData har som standard maxLength=-1 og transferEncoding=none med tomme contentType-, href-, id-, name-, rid-, use- og usehref-attributter

Event-hosten udstiller ikke en scalar value-accessor på exData; brug loadXML og saveXML til fremmet XML-indhold

Øjeblikkelige læsninger, identitet og transaktioner

En ren native XML-operation validerer og serialiserer hver anmodning, før script-afviklingen fortsætter; misdannet XML kaster inde i scriptet og kan håndteres med try/catch uden at ændre det aktuelle indhold

Den deterministiske respons-replay deler den eksisterende script-transaktion og afvikler ingen UI-, fil-, netværks- eller transport-sideeffekter

Efterfølgende saveXML-kald ser tidligere succesfulde importer og aktuelle exData-attributter under samme event; tilbageholdte referencer opløser den aktuelle nodeidentitet i senere events

Kun den målrettede gentagne occurrence modtager nativt indhold, og en ny occurrence initialiseres fra skabelon-XML i stedet for at kopiere en eksisterende occurrences importerede override

En importeret tom rod med overwrite=true rydder det faktiske indhold og forbliver tom efter persistens og genindlæsning; den vender ikke tilbage til skabelonindhold

Ubehandlede scriptfejl og native publiceringsfejl gendanner eksakte native XDP-bytes, inklusive tidligere almindelige feltskrivninger og XML-mutationer

Budgetter og gemt forbrug

Scriptgrænser afgrænser XML-input og -outputbytes, native element- og tekstnoder, dybde, operationer, forløbet tid og replay-responser; widget MaxValueChars begrænser også den publicerede XML-værdi

FPC-broen bevarer UTF-8-bytes gennem XML-responser og almindelige handlingsværdier, inklusive accenttegn og supplementary Unicode

Gemt XHTML draw-indhold bruger den eksisterende rich text-consumers font-, størrelses-, farve- og inline CSS-adfærd; uafhængige PDF-readers verificerer første-instance-tekst, erstatningsstyling, ny-instance-indhold og eksplicit rydning

Tilbageværende XML-integrationsmål

Denne levering implementerer exData indholdsoperationer; andre nodeklasse loadXML/saveXML-metoder, Data DOM strukturel import og generel fremmed node-mutation forbliver separate mål

DTD-deklarationer og custom entitetskataloger forbliver uimplementeret; foruddefinerede entiteter samt decimal- eller hexadecimale tegnreferencer understøttes

Kommentarer og processing instructions i elementer forbliver native gennem import, øjeblikkelige læsninger, gemning, genindlæsning og rollback; markup på dokumentniveau uden for roden og komplet XML leksikalsk rundtur forbliver separate mål

Ekstern href-opløsning, encodede exData-overførsler, maxLength-håndhævelse, fremmede medie-consumers og Unicode rich widget-appearances forbliver separate implementeringsmål

Referencer og relaterede API'er

Import rod- og erstatningssemantik følger Adobe XFA Element API; XML-navne, referencer og whitespace følger XML 1.0

Se TXFAEventBinding, TXFAEventActionKind, Rich Text Properties og Interactive XFA Runtime