19
Data Description Specification
This chapter describes the data description grammar and provides a reference that specifies that data
description syntax.
“Using Web Services” on page 329
provides more specific information on using the data description
grammar in the context of a web services
About the Data Description Grammar
The XFA data description grammar describes the structure of data in a data document. It can specify a
single, optional, default data description and any number of optional, context-specific data descriptions. A
data description element is separate from the data document.
The XFA data description grammar is useful in the following situations:
●
Multiple views.
A data description in XFA is analogous to a “view” in a relational database. There may be
multiple views for the same data because different web service operations require different subsets of
the data, organized in different ways. The output document, if there is one, may require yet another
organization. Hence, a single view expressed by a schema bound to the data with a schema declaration
is not enough.
Support for a range of data.
XFA processing applications can accept existing data instance documents
without alteration, despite the inconsistency of schema declarations in XML documents.
●
The XFA data description syntax is more concise and readable than XML Schema [XMLSchema] but does
not do as much. XFA data descriptions do not include defaults and do not support validation of text
content. They do, however, fully describe the namespaces, element names, attribute names, and the
hierarchy which joins them. Data descriptions are described in the
“Data Description Grammar” on
page 746
“Data Description Element Reference” on page 749
In keeping with the general principle that XFA is tolerant when importing data, data descriptions are
not
used to validate data coming into the XFA application. Indeed, most of any given data description is only
used during output from the XFA application. (The sole part used on input is the
dd:nullType
attribute,
which affects both input and output.) This means that data descriptions are not required for most
processing, so XFA continues to support
ad hoc
datasets. Of course, validation of data is still possible using
scripts contained in “validate” elements in the template. See
“Template Specification” on page 418
more information about validation scripts.
XFA applications produce XML output in several different contexts. The XML output document may be the
final product of the XFA application. It may be sent to an HTTP host via the
SUBMIT
action. Or it may be
sent to a web service. In the last case the XFA application will probably receive a reply, itself in XML format.
Each of these contexts is known as a “connection”. Connections are described in the
“Connection Set
Specification” on page 732.
Web Services are described in
“Using Web Services” on page 329.
Submission
via HTTP is described in
“Submitting Data and Other Form Content to a Server” on page 324.
Data Description Grammar
Data descriptions are contained in an XDP inside the
dataSets
packet (“XDP
Each data description is enclosed within a
dataDescription
element. The order of the
746