- From: Steven Pemberton <steven.pemberton@cwi.nl>
- Date: Wed, 12 Apr 2017 12:49:00 +0200
- To: "public-xformsusers@w3.org" <public-xformsusers@w3.org>, "Erik Bruchez" <erik@bruchez.org>
- Message-ID: <op.yykwbyxismjzpq@steven-xps>
While planning the rewrite for Deferred Updates, I hace come to the conclusion that I like the idea for a <update/> action: * It is easy to explain. * It is easier to understand. * The system knows which bits of the update eare needed, so can optimise it. Let's talk about it this afternoon. Steven On Wed, 08 Mar 2017 07:04:16 +0100, Erik Bruchez <erik@bruchez.org> wrote: > All, > > During our last call we discussed how we could unify rebuild, > recalculate, and revalidate >(RRR). The thinking was that currently the > spec is a little too prescriptive. > > For example, there is no clear use case for having the ability to run > `recalculate` and >`revalidate` independently, yet these operations have > their own actions and events. I have >found that whenever you want to > recalculate, you almost always want a revalidate. >Similarly, when you > want a rebuild, you almost always want a recalculate and a revalidate. > >So you end up writing: > > <action> > <rebuild/> > <recalculate/> > <revalidate/> > </action> > > If we were to pursue this further, I think we should have a single > "update model" action. >In fact it could be even called simply `update`: > > <update/> > > That action would target a single model. Once it completes, the expected > result would be >that: >- the dependency graph is up to date > - calculations and MIPs are up to date > - validations are up to date > > The action should be "fast". It can still use the deferred update flags > which XForms >specifies (rebuild, recalculate, revalidate flags). It can > also use other optimizations as >it sees fit. > > In the case of dynamic XPath dependencies, if we cannot mandate that an > implementation >detects every possible such dependencies, the `update` > action could have a `force` flag: > > <update force="true"/> > This would force the processor to rebuild everything. > > The concepts of rebuild, recalculate, and revalidate still make sense. > It's just that they >are parts of a larger encompassing model update > process. >-Erik
Received on Wednesday, 12 April 2017 10:49:43 UTC