On Thu, 22 Mar 2007, Dave Raggett wrote:
> On Thu, 22 Mar 2007, Ian Hickson wrote:
>
> > Some people have suggested some features, like declarative
> > calculations, but it isn't clear how those features would work (the
> > XForms Transitional draft, as previously discussed, doesn't actually
> > define how they would work for all cases -- according to the current
> > definition, in fact, one would have to solve the halting problem to
> > implement the spec). In the case of declarative calculations it is
> > also not clear how the feature could be made to degrade gracefully
> > without breaking full implementations.
>
> You are incorrect on this point. Please re-read the XForms Transitional
> draft spec as I have clarified the wording based upon how my
> implementation works, and it should be noted that this has been tested
> on a much wider range of browsers than Web Forms 2.0 has at this point
> in time.
The new spec doesn't change the UA requirements, so you still (as far
as I can tell) require UAs to do static analysis of turing complete code,
which, here, reduces to the halting problem. (All you've done is made such
cases non-conforming, but that doesn't affect the UA at all.)
There are other problems, too, such as how to handle fields whose exact
lists of dependencies themselves depend on other field, e.g. because
the calculate="" field does something like:
calculate="document.forms[0][document.forms[0].field.value] + 1"
It's also unclear to me how UAs should handle cyclic graphs (which can't
be sorted topologically) or graphs whose dependencies are either truly or
apparently random (e.g. because the field used depends on the return value
of an XMLHttpRequest call to a remote server).
--
Ian Hickson U+1047E )\._.,--....,'``. fL
http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,.
Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'