- From: Jérôme Nègre <jerome.negre@e-xmlmedia.fr>
- Date: Mon, 7 Jan 2002 11:48:21 +0100
- To: <www-forms@w3.org>
Hi,
In the current working draft, events xforms:recalculate and xform:revalidate
are dispatched to element model. This implies that recalculation and
revalidation are done a model after another (as described in chapter
11.3.6).
But, for some kind of dependencies, such as in the following example, this
is not possible:
<html xml:...="...">
<head>
<xform:model id="m1">
<xform:instance id="i1">
<i:dad>
<i:son1>value</i:son1>
<i:son2>value</i:son2>
</i:dad>
</xform:instance>
<xform:bind ref="i:dad/i:son2" calculate="id('i2')/i:mom/i:daughter"/>
</xform:model>
<xform:model id="m2">
<xform:instance id="i2">
<i:mom>
<i:daughter>value</i:daughter>
</i:mom>
</xform:instance>
<xform:bind ref="i:mom/i:daughter" calculate="id('i1')/i:dad/i:son1"/>
</xform:model>
</head>
<body>
<xform:input model="m1" ref="i:dad/i:son1">
<xform:caption>Change me</xform:caption>
</xform:input>
</body>
</html>
The recalculation must happen in the following order :
1/ The user changes the value of id('i1')/i:dad/i:soon1 via the input
control.
2/ id('i2')/i:mom/i:daughter is recalculated.
3/ id('i1')/i:dad/i:son2 is recalculated.
In order to have this behaviour, I think recalculation/revalidation should
be made global, and their corresponding events should be dispatched to
either the root element of the document, or to a new element containing all
the models.
Am I missing something ?
Regards,
Jérôme Nègre
Received on Monday, 7 January 2002 05:48:46 UTC