Re: XForms 1.1 Implementers encouraged to enable multiple MIP bindings per data node

John Boyer <[email protected]> Fri, 27 May 2011 09:04:34 -0700
Newsgroups gmane.comp.web.xforms
Message-ID <OF7C11DF5B.C44C9749-ON8825789D.0057DE3A-8825789D.0058528C@ca.ibm.com>
This is a multipart message in MIME format.
--=_alternative 005851B98825789D_=
Content-Type: text/plain; charset="US-ASCII"

Hi Joern,

Sure.  The idea is that type is only one of a set of MIPs right now that 
are already and'd together to produce a validation result, and that trend 
should just continue.
While it is feasible for someone to write completely incompatible types, 
it's also possible for them to write incompatible constraints, or even to 
write one required="true()" and required="false()" for the same node.

The AND means that a node must be valid according to all available rules, 
and if any fail, then the node is invalid.

So, in the case of type string and integer on a node containing "ABC", the 
string check passes, but the integer check then fails, so the node is 
invalid.

We felt it was not a good idea to be restrictive to one type because 
content coming from multiple sources might in fact assign exactly the same 
type, or they might assign compatible derived types, i.e. one system knows 
more about what kind of type the data should take than another.  Such is 
the case above where one system only knows it needs a string, but another 
knows it should be an integer.  As soon as you start defining parts of 
forms that are used in multiple forms, it is often the case that the part 
will say something generic, and the consumer will say something compatible 
but more specific.

Cheers,
John M. Boyer, Ph.D.
Distinguished Engineer, IBM Forms and Smarter Web Applications
IBM Canada Software Lab, Victoria
E-Mail: [email protected] 

Blog: http://www.ibm.com/developerworks/blogs/page/JohnBoyer
Blog RSS feed: 
http://www.ibm.com/developerworks/blogs/rss/JohnBoyer?flavor=rssdw





From:   Joern Turner <[email protected]>
To:     John Boyer/CanWest/IBM@IBMCA
Cc:     "[email protected]" <[email protected]>
Date:   05/27/2011 07:52 AM
Subject:        Re: XForms 1.1 Implementers encouraged to enable multiple 
MIP bindings per data node



Dear Working Group,

i'm considering to implement the proposal below. However i cannot make
any sense out of the proposed AND combinator for the 'type' MIP. What
shall be the meaning in this case? That a node e.g. can be a string
AND an integer at the same time? I'm sure i must have misunderstood
something here.

Would be happy if you can shed some light on this.

Thanks

Joern Turner

On Tue, Apr 13, 2010 at 7:06 PM, John Boyer <[email protected]> wrote:
>
> Dear Forms Community,
>
> It is a pleasure to inform you that the W3C Forms Working Group recently
> decided upon a default combination mechanism for handling multiple model
> item properties binding to the same data node. For reference, please see 
[1,
> 2]
>
> [1] http://www.w3.org/MarkUp/Forms/wiki/MIPS
> [2] http://www.w3.org/2010/03/25-forms-minutes.html#res_multimip
>
> For some MIPs like calculate, more than one formula binding does not 
make
> sense, so the default in that case continues to be an
> xforms-binding-exception.  However, for other MIPs, and most notably
> constraint, it is not only possible but also preferable to have a 
default
> combinator based on the MIP.  For example, if more than one constraint 
MIP
> is applied, then all constraints must be satisfied (true) for the node 
to be
> valid (in fact, this is consistent with current combination processing 
of
> constraint, required and type MIPs anyway).  By comparison, a node would 
be
> readonly if any bind readonly MIP evaluates to true for the node, and 
this
> is conceptually what already happens in the defaulting mechanism for
> readonly, which makes a node readonly if any ancestor evaluates to true 
even
> if the readonly MIP for the node itself is false.
>
> For these technical reasons and also to promote faster adoption and
> determination of any problems with the approach, the W3C Forms Working 
Group
> also resolved (see [3]) to encourage implementers of XForms 1.1 to 
proceed
> with relaxing the xforms-binding-exception for selected MIPs and instead 
use
> the default combinators as described in [1].
>
> [3]
> 
http://lists.w3.org/Archives/Public/public-forms/2010Apr/att-0002/2010-04-07.html#resolution1

>
> Best regards,
> John M. Boyer, Ph.D.
> STSM, Lotus Forms
> Workplace, Portal and Collaboration Software
> IBM Victoria Software Lab
> E-Mail: [email protected]
>
> Blog: http://www.ibm.com/developerworks/blogs/page/JohnBoyer
> Blog RSS feed:
> http://www.ibm.com/developerworks/blogs/rss/JohnBoyer?flavor=rssdw
>
>


--=_alternative 005851B98825789D_=
Content-Type: text/html; charset="US-ASCII"

<font size=2 face="sans-serif">Hi Joern,</font>
<br>
<br><font size=2 face="sans-serif">Sure. &nbsp;The idea is that type is
only one of a set of MIPs right now that are already and'd together to
produce a validation result, and that trend should just continue.</font>
<br><font size=2 face="sans-serif">While it is feasible for someone to
write completely incompatible types, it's also possible for them to write
incompatible constraints, or even to write one required=&quot;true()&quot;
and required=&quot;false()&quot; for the same node.</font>
<br>
<br><font size=2 face="sans-serif">The AND means that a node must be valid
according to all available rules, and if any fail, then the node is invalid.</font>
<br>
<br><font size=2 face="sans-serif">So, in the case of type string and integer
on a node containing &quot;ABC&quot;, the string check passes, but the
integer check then fails, so the node is invalid.</font>
<br>
<br><font size=2 face="sans-serif">We felt it was not a good idea to be
restrictive to one type because content coming from multiple sources might
in fact assign exactly the same type, or they might assign compatible derived
types, i.e. one system knows more about what kind of type the data should
take than another. &nbsp;Such is the case above where one system only knows
it needs a string, but another knows it should be an integer. &nbsp;As
soon as you start defining parts of forms that are used in multiple forms,
it is often the case that the part will say something generic, and the
consumer will say something compatible but more specific.</font>
<br>
<br><font size=2 face="sans-serif">Cheers,</font>
<br><font size=2 face="sans-serif">John M. Boyer, Ph.D.<br>
Distinguished Engineer, IBM Forms and Smarter Web Applications<br>
IBM Canada Software Lab, Victoria<br>
E-Mail: [email protected] &nbsp;<br>
<br>
Blog: </font><a href=http://www.ibm.com/developerworks/blogs/page/JohnBoyer><font size=2 face="sans-serif">http://www.ibm.com/developerworks/blogs/page/JohnBoyer</font></a><font size=2 face="sans-serif"><br>
Blog RSS feed: </font><a href="http://www.ibm.com/developerworks/blogs/rss/JohnBoyer?flavor=rssdw"><font size=2 face="sans-serif">http://www.ibm.com/developerworks/blogs/rss/JohnBoyer?flavor=rssdw</font></a><font size=2 face="sans-serif"><br>
<br>
</font>
<br>
<br>
<br>
<br><font size=1 color=#5f5f5f face="sans-serif">From: &nbsp; &nbsp; &nbsp;
&nbsp;</font><font size=1 face="sans-serif">Joern Turner &lt;[email protected]&gt;</font>
<br><font size=1 color=#5f5f5f face="sans-serif">To: &nbsp; &nbsp; &nbsp;
&nbsp;</font><font size=1 face="sans-serif">John Boyer/CanWest/IBM@IBMCA</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Cc: &nbsp; &nbsp; &nbsp;
&nbsp;</font><font size=1 face="sans-serif">&quot;[email protected]&quot;
&lt;[email protected]&gt;</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Date: &nbsp; &nbsp; &nbsp;
&nbsp;</font><font size=1 face="sans-serif">05/27/2011 07:52 AM</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Subject: &nbsp; &nbsp;
&nbsp; &nbsp;</font><font size=1 face="sans-serif">Re: XForms 1.1
Implementers encouraged to enable multiple MIP bindings per data node</font>
<br>
<hr noshade>
<br>
<br>
<br><tt><font size=2>Dear Working Group,<br>
<br>
i'm considering to implement the proposal below. However i cannot make<br>
any sense out of the proposed AND combinator for the 'type' MIP. What<br>
shall be the meaning in this case? That a node e.g. can be a string<br>
AND an integer at the same time? I'm sure i must have misunderstood<br>
something here.<br>
<br>
Would be happy if you can shed some light on this.<br>
<br>
Thanks<br>
<br>
Joern Turner<br>
<br>
On Tue, Apr 13, 2010 at 7:06 PM, John Boyer &lt;[email protected]&gt; wrote:<br>
&gt;<br>
&gt; Dear Forms Community,<br>
&gt;<br>
&gt; It is a pleasure to inform you that the W3C Forms Working Group recently<br>
&gt; decided upon a default combination mechanism for handling multiple
model<br>
&gt; item properties binding to the same data node. For reference, please
see [1,<br>
&gt; 2]<br>
&gt;<br>
&gt; [1] </font></tt><a href=http://www.w3.org/MarkUp/Forms/wiki/MIPS><tt><font size=2>http://www.w3.org/MarkUp/Forms/wiki/MIPS</font></tt></a><tt><font size=2><br>
&gt; [2] </font></tt><a href="http://www.w3.org/2010/03/25-forms-minutes.html#res_multimip"><tt><font size=2>http://www.w3.org/2010/03/25-forms-minutes.html#res_multimip</font></tt></a><tt><font size=2><br>
&gt;<br>
&gt; For some MIPs like calculate, more than one formula binding does not
make<br>
&gt; sense, so the default in that case continues to be an<br>
&gt; xforms-binding-exception. &nbsp;However, for other MIPs, and most
notably<br>
&gt; constraint, it is not only possible but also preferable to have a
default<br>
&gt; combinator based on the MIP. &nbsp;For example, if more than one constraint
MIP<br>
&gt; is applied, then all constraints must be satisfied (true) for the
node to be<br>
&gt; valid (in fact, this is consistent with current combination processing
of<br>
&gt; constraint, required and type MIPs anyway). &nbsp;By comparison, a
node would be<br>
&gt; readonly if any bind readonly MIP evaluates to true for the node,
and this<br>
&gt; is conceptually what already happens in the defaulting mechanism for<br>
&gt; readonly, which makes a node readonly if any ancestor evaluates to
true even<br>
&gt; if the readonly MIP for the node itself is false.<br>
&gt;<br>
&gt; For these technical reasons and also to promote faster adoption and<br>
&gt; determination of any problems with the approach, the W3C Forms Working
Group<br>
&gt; also resolved (see [3]) to encourage implementers of XForms 1.1 to
proceed<br>
&gt; with relaxing the xforms-binding-exception for selected MIPs and instead
use<br>
&gt; the default combinators as described in [1].<br>
&gt;<br>
&gt; [3]<br>
&gt; </font></tt><a href="http://lists.w3.org/Archives/Public/public-forms/2010Apr/att-0002/2010-04-07.html#resolution1"><tt><font size=2>http://lists.w3.org/Archives/Public/public-forms/2010Apr/att-0002/2010-04-07.html#resolution1</font></tt></a><tt><font size=2><br>
&gt;<br>
&gt; Best regards,<br>
&gt; John M. Boyer, Ph.D.<br>
&gt; STSM, Lotus Forms<br>
&gt; Workplace, Portal and Collaboration Software<br>
&gt; IBM Victoria Software Lab<br>
&gt; E-Mail: [email protected]<br>
&gt;<br>
&gt; Blog: </font></tt><a href=http://www.ibm.com/developerworks/blogs/page/JohnBoyer><tt><font size=2>http://www.ibm.com/developerworks/blogs/page/JohnBoyer</font></tt></a><tt><font size=2><br>
&gt; Blog RSS feed:<br>
&gt; </font></tt><a href="http://www.ibm.com/developerworks/blogs/rss/JohnBoyer?flavor=rssdw"><tt><font size=2>http://www.ibm.com/developerworks/blogs/rss/JohnBoyer?flavor=rssdw</font></tt></a><tt><font size=2><br>
&gt;<br>
&gt;<br>
</font></tt>
<br>
--=_alternative 005851B98825789D_=--