TXFAEventBinding
Unit: HPDFXFAEventScript
Declaration
TXFAEventBinding= record
Name, ClassName: AnsiString;
ParentIndex: Integer;
Value, Presence, Access: AnsiString;
InstanceCount, InstanceGroup: Integer;
MinInstances, MaxInstances: Integer;
DefaultValue, DefaultPresence, DefaultAccess: AnsiString;
Repeated: Boolean;
Identity, ScriptSource, Locale, EventActivity: AnsiString;
Domain: TXFAEventBindingDomain;
DataIdentity: AnsiString;
DataBindingEnabled: Boolean;
Attributes, DefaultAttributes: TXFAEventAttributes;
PropertyPath: AnsiString;
PropertyOwnerIndex: Integer;
XML, DefaultXML: AnsiString;
DataBindingRef, DataContextIdentity: AnsiString;
DataBindingExplicit: Boolean;
end;
Behaviour
Describes one virtual event host node; each actual repeated subform occurrence receives a separate binding and children
ParentIndex selects its parent binding, or -1 for the root; Value, Presence and Access describe current occurrence state
InstanceGroup identifies bindings managed by the same instance manager, whilst InstanceCount and occurrence limits describe the manager bounds
Template defaults initialize new instances; Repeated identifies nodes with an occur declaration
TXFAWidgetRuntime builds these records from the template and current datasets context before engine execution
Identity is the stable host identity for this occurrence; ScriptSource contains JavaScript for a script object declared inside variables
An empty Identity uses a unique binding-index identity; supply stable explicit identities when binding order can change so retained references continue to address the same occurrence
Locale carries the node's optional locale attribute as UTF-8 text; the executing node inherits the nearest nonempty ancestor value, with an empty chain selecting the user locale
EventActivity supplies xfa.event.name for the executing binding; TXFAWidgetRuntime sets event activities and calculate or validate context names, whilst empty lower-level bindings use event
Domain distinguishes form nodes from native datasets, dataGroup and dataValue nodes; its default xebdForm preserves existing callers
DataIdentity references another binding's stable identity to connect a form field or subform to its data node; field and data-value reads then share one live value
DataBindingEnabled allows implicit data-node creation when a repeated form prototype has no existing data binding; runtime fields with bind match=none leave it False and expose no synthetic data node
Data-domain InstanceGroup records the same-name sibling occurrence for native virtual target publication; data bindings do not expose form instance managers
Attributes contains effective current property attributes; DefaultAttributes contains template attributes used for a newly cloned property node
Property-domain Name retains the actual name attribute, usually empty; its ClassName supplies the SOM component and its parent indices preserve property hierarchy and local sibling occurrences
PropertyPath and PropertyOwnerIndex identify a form-only property absent from the template; the path uses class occurrence components, and the owner index selects the native form occurrence in the same binding array
Runtime form-only bindings expose current native attributes whilst their DefaultAttributes use schema defaults, so cloning a repeated prototype creates default property values rather than inheriting another instance override
Leave PropertyPath empty for existing declared-property bindings; its associated owner index is then unused
For exData, XML is the current serialised UTF-8 element and DefaultXML supplies template content for a new repeated instance
An exData binding with empty XML starts from an empty native exData element; form-only DefaultXML stays empty so a new occurrence does not inherit another instance's imported foreign content
XML input strings participate in the event context byte budget; saveXML and loadXML use validated native response replay and publish through xeakLoadXML
Data-domain XML carries the runtime's bounded shallow native XML metadata: element name, namespace, value, attributes, namespace declarations, ordered nontext content and child positions; DefaultXML is unused for data nodes
The metadata contains one node and its direct text, comment and processing-instruction children, avoiding a duplicated descendant subtree for each data binding
DataBindingRef is the trimmed dataRef selector; DataBindingExplicit distinguishes an explicit empty dataRef from an implicit field-name binding
DataContextIdentity identifies the field's actual native data scope independently of DataIdentity, which identifies its selected leaf
These fields let XML imports reevaluate bindings against the fresh Data DOM immediately, including newly available targets and descendant, wildcard, class and indexed selections
Normal applications use TXFAWidgetRuntime to build native bindings; lower-level callers can omit XML metadata for scalar-only data nodes and leave the new binding fields at their default values
Related APIs
Interactive Dynamic XFA Widget Runtime, FormCalc Functions and XFA Packet DOM