3
Object Models in XFA
This chapter describes the manner in which data objects are named, stored, manipulated, and referenced
by XFA processing applications.
This chapter contains the following sections:
“XFA Names”
explains the syntax of names that can be assigned to individual template elements. Such
names are important in the subsequent sections in this chapter.
“Document Object Models”
introduces the various Document Object Models (DOMs) used in XFA and
discusses the general rules governing their relationship to XML. Then, it gives an overview of how the
various DOMs interact with each other and with XFA processors.
“Scripting Object Model”
introduces the expression syntax used to refer to objects in the DOMs. This
expression syntax is known as the XFA Scripting Object Model (XFA-SOM).
XFA Names
An XFA name is a valid XML name, as defined in the XML specification version 1.0 [XML], with the addi-
tional restriction that it must not contain a colon ( : ) character. XFA element names are used in the follow-
ing ways:
Explicitly identifying an object in an XFA DOM, using the XFA Scripting Object Model syntax (“Scripting
Object Model” on page 81)
Associating data with template fields, as part of data binding
The XML Specification version 1.0 defines name as follows:
Name is a token beginning with a letter or one of a few punctuation characters, and continuing with
letters, digits, hyphens, underscores, colons, or full stops, together known as name characters. Names
beginning with the string "xml", or with any string which would match (
('X'|'x') ('M'|'m')
('L'|'l')
), are reserved for standardization in this or future versions of this specification.
Note: The Namespaces in XML Recommendation
[XMLNAMES]
assigns a meaning to names containing
colon characters. Therefore, authors should not use the colon in XML names except for namespace
purposes, but XML processors must accept the colon as a name character.
An Nmtoken (name token) is any mixture of name characters.
NameChar
::=
Letter | Digit | '.' | '-' | '_' | ':' | CombiningChar
| Extender
[This specification precludes the use of ‘:’ in a name.]
Name
::=
(Letter | '_' | ':')
(
NameChar
)*
[This specification precludes the use of ‘:’ in a name.]
70
Home Index Bookmark Pages
Pages: Home Index All Pages