Home

XForms

XForms is a W3C specification for building web forms that aims to improve beyond traditional HTML forms by providing a clear separation of data, user interface, and submission logic. It relies on XML to define the form structure and data, and it emphasizes declarative data modeling, validation, and dynamic behavior.

The core architecture consists of three parts: the data instance, the form model, and the user interface.

Validation, constraints, and calculations are defined within the binding layer. Each input control can specify constraints,

Submission and data transport are handled through xforms:submission elements, which describe endpoints, methods (such as HTTP

Historically, XForms gained attention as a robust alternative to HTML forms but received limited native browser

The
instance
is
an
XML
document
that
holds
the
form
data.
The
model
(xforms:model)
contains
xforms:instance(s)
and
xforms:bind
elements,
which
declare
data
types,
constraints,
calculations,
and
event-driven
rules.
The
user
interface
is
composed
of
a
set
of
XForms
controls
such
as
xforms:input,
xforms:select1,
xforms:textarea,
xforms:group,
and
xforms:repeat,
which
are
bound
to
the
data
through
the
bindings
and
can
be
arranged
dynamically.
requiredness,
and
data
types,
and
can
derive
values
from
expressions
via
calculate.
The
relevant
attribute
can
govern
dynamic
visibility
or
enabling
of
UI
elements.
This
architecture
enables
data-driven
forms,
conditional
logic,
and
reusable
form
components
without
extensive
client-side
scripting.
POST
or
GET),
and
data
serialization.
Submissions
can
be
triggered
by
actions
or
automatically
when
certain
conditions
are
met.
support,
leading
to
reliance
on
form
processors,
server-side
components,
or
specialized
engines.
It
remains
in
use
in
certain
data-collection
and
enterprise
environments,
notably
in
mobile
data
capture
and
forms
platforms
that
leverage
its
declarative,
model-driven
approach.