Submission with instance replacement and deferred updates

All,

This issue may have been raised before, but I just hit it again when
implementing some optimizations in our implementation, and I would
like to make sure that it is discussed if not already done. You never
know, John has so many action items ;-)

Section "11.2 The xforms-submit Event", upon instance replacement,
directly performs rebuild, recalculate, revalidate and refresh
operations. My question is simple: why do we do this directly, rather
than setting the flags?

This in particular is inconsistent with the way xforms:insert
works. See section "9.3.5 The insert Action", point 9, where the flags
are set:

   "The XForms action system's deferred update flags for rebuild,
    recalculate, revalidate and refresh are set."

An instance replacement is not different from an insert action, in
that an entire instance or part of it may be replaced. The two should
work consistently.

If we want to be consistent, which option to choose? I do not see a
particular reason why a submission with instance replacement would
work differently from any other action in XForms, so I do think that
the consistency would work in favor of modifying the behavior of
submission to set the deferred update flags.

That is, unless there is a very good reason to perform these actions
directly, but at this point I don't see any, and I suspect that this
is just a legacy from XForms 1.0 prior to the more refined work on
deferred updates done in 1.1.

-Erik

-- 
Orbeon Forms - Web Forms for the Enterprise Done the Right Way
http://www.orbeon.com/

Received on Monday, 23 July 2007 14:47:37 UTC