Re: Test 6.1.3.b xsi:nil

I know it's a bit late in terms of 1.1 to bring up this discussion, but it
almost seems to me that we have the interpretation of xsi:nil backwards in
the spec, below.  The intent of xsi:nil="true" seems to be to affirmatively
indicate a nil value, i.e. rather than simply interpreting the absence of
an element to have that meaning.

So if one actually wants to set a value of "nil", then is not that to be
interpreted as filling the form field?  So perhaps the definition of
Required being satisfied is to say (1) either there's non-zero length
content, or (2) xsi:nil="true".  In either case the bound data has a value,
whether nil or not...

If we want to keep the current interpretation (probably so) then I just
suggest we drop this test case since xsi:nil is kind of a no-op given the
other condition...Sorry, Charlie

  From:       Charles F Wiecha/Watson/IBM@IBMUS                                                                            
  Date:       05/12/2009 10:24 AM                                                                                          
  Subject:    Test 6.1.3.b xsi:nil                                                                                         
  Sent by:                                                                                  

Dear Forms WG -- I have the action to rewrite test 6.1.3.b which is
concerned with the behavior of xsi:nil in the Required MIP. The definition
of Required is as follows:

A form may require certain values, and this requirement may be dynamic.
When evaluating to true, this model item property indicates that a
non-empty instance data node is required before a submission of instance
data can occur. Non-empty is defined as:

1. If the bound instance data node is an element, the element must not have
the xsi:nil attribute set to true.
2. The value of the bound instance data node must be convertible to an
XPath string with a length greater than zero.

According to W3C schema: An element with xsi:nil="true" may not have any
element content but it may still carry attributes.

So it does not seem possible to test the behavior of xsi:nil strictly on
the presence of element content...there is no valid case where
xsi:nil="true" can also appear with non-zero length instance data. Hence
the two conditions above would seem to be redundant.

Perhaps I've missed something in the last couple of discussions on this recollection is that we wanted to rework the test solely to
examine the presence of xsi:nil="true" and suppress submission regardless
of element content. We can write the test this way, but that instance would
fail schema validation anyway given the element content...I don't suggest
we do this but is that what was intended???

Thanks, Charlie Wiecha

Received on Tuesday, 12 May 2009 14:45:53 UTC