W3C home > Mailing lists > Public > public-forms@w3.org > October 2007

RE: XForms 1.1 spec update for dynamic dependencies

From: Rogelio Pérez Cano <rogeliop@satec.es>
Date: Wed, 10 Oct 2007 14:40:25 +0200
To: "'John Boyer'" <boyerj@ca.ibm.com>, "'Forms WG \(new\)'" <public-forms@w3.org>
Message-ID: <auto-000021844827@satec.es>
Hi John & all, from my point of view very good example and stuff, only a
typo error, in the 7.3 section there is: 
 
<xforms:instance>xforms:instance>

Regards
 
Roger.

  _____  

De: public-forms-request@w3.org [mailto:public-forms-request@w3.org] En
nombre de John Boyer
Enviado el: miércoles, 10 de octubre de 2007 3:16
Para: Forms WG (new)
Asunto: XForms 1.1 spec update for dynamic dependencies



Please visit the latest editor's draft [A], which contains the changes
needed for rigorous definition of dynamic dependencies. 

[A]  <http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html>
http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html 

There's actually a bit of stuff to go through here, besides the subsection
with the new definition.  Additional changes were necessary to percolate the
proper meaning throughout the spec. 

Here's what I changed: 

1) Added a section to define references, dependencies, reference lists,
dependency lists and dynamic dependencies [B] 

[B]
<http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#expr-depende
ncies>
http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#expr-dependen
cies 

In particular, note the definition of repeat index management as implicit
instance data management.  This is extremely important to including
invocations of index() in the automatic update of UI expressions.  It also
caused the most amount of "percolation" to other areas of the spec 

2) Repurposed the "Binding Expressions" section to talk about all Expression
Categories [C] 

[C]
<http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#expr-express
ion-categories>
http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#expr-expressi
on-categories 

In particular, note the separation of model binding expressions from
computed expressions.  Also see the note discussing how rebuilds can be
associated with automatic repeat index changes that occur due to change of
focus. 

3) The view of repeat index as implicit instance data caused me to realize
that setindex is a special kind of setvalue.  Hence, deferred update flag
settings for setvalue must now also occur for setindex.  Both the deferred
update section setindex in particular were updated to reflect this.  It also
seemed appropriate to say a little more about how actions setvalue, insert,
delete, setindex, and toggle affect the deferred update in those notes we
have at the end of each of those actions. 

4) I modified the setfocus action, the xforms-focus description and the UI
repeat processing text to add a sentence pointing out that changing the
focus may cause repeat index changes and that such changes occurred as if by
setindex. 

5) While cleaving model binding expression from computed expression and
rigorously defining dynamic dependencies and where they could safely be used
without calling some kind of "rebuild", I noted several glaring omissions,
which I fixed.  Firstly, we really only had a half-way attempt to separate
UI binding expressions from binding expressions appearing in actions and on
submission, so those are now in a separate category in [C] where it is made
obvious that they are evaluated as the action or submission occurs (rather
than, say, during a rebuild or a refresh).  See [D]. 

[D]
<http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#expr-actions
-submissions>
http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#expr-actions-
submissions 

Secondly, we talked a lot about UI Binding Expressions, which were defined
to be binding expressions on form controls.  Therefore, UI refreshment
technically did not cover the behavior of the value attribute on output, nor
the bindings on helper elements like label, help, hint, alert, etc.  Now, I
have defined a broader class of "UI Expression" which contains UI Binding
Expressions as well as all other expressions used in UI elements. So now it
is clear that all of these are to be updated on refresh. See [E] 

[E]
<http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#expr-ui-expr
essions>
http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#expr-ui-expre
ssions 

6) While in the neighborhood, I noticed that the definition of the global
attribute xforms:bind for use on custom controls was incorrect, so I changed
[F]. 

[F]
<http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#ui-binding-f
oreign>
http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#ui-binding-fo
reign 

Note that the issue here is that it must be known whether xforms:bind
represents an single node binding or a nodeset binding.  The section claimed
it could be either, but this makes no sense.  Since we also have
xforms:repeat-bind, it was clear that xforms:bind is for single node
bindings only. 

7) The glossary of terms entries for model binding expression and UI binding
expression were updated to reflect the above points. 

John M. Boyer, Ph.D.
STSM: Lotus Forms Architect and Researcher
Chair, W3C Forms Working Group
Workplace, Portal and Collaboration Software
IBM Victoria Software Lab
E-Mail: boyerj@ca.ibm.com  

Blog:  <http://www.ibm.com/developerworks/blogs/page/JohnBoyer>
http://www.ibm.com/developerworks/blogs/page/JohnBoyer
Received on Wednesday, 10 October 2007 12:40:40 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 1 October 2013 22:06:45 UTC