Re: context node for output's contents

Thanks for confirming our thoughts, Mark.  We will go ahead and fix the bug.

A follow up type of question.  Assume I have a xf:output has only @value 
(i.e. no binding attributes).  It would NOT fall into the #36 erratum 
dealing with data binding restrictions, correct? 
http://www.w3.org/2006/03/REC-xforms-20060314-errata.html#E36

So if I had:

<xf:instance xmlns="">
   <root>
     <data>
       <value>This is my value</value>
     </data>
   </root>
</xf:instance>
....
<xf:group ref="/root/data">
   <xf:output value=".">
     <xf:label ref="value"/?
   </xf:output>
   <xf:output ref="."/>
</xf:group>

Would I be correct to say that I should get a xforms-binding-exception 
for the second output but not the first?

--Aaron

Mark Birbeck wrote:
> 
> Hi Aaron,
> 
> I would suggest that it is worth fixing, since there should always be
> an evaluation context, and so the context for the label should
> definitely should be that of the 'most recent' evaluation context.
> 
> formsPlayer does implement it that way, but I do recall that we had a
> bug in this area at one time, so you may be using an out of date
> version of formsPlayer for your comparisons. But I've just checked
> with the latest preview release of 1.5 and it works the way we would
> expect it to. I used your test first, and then modified it slightly as
> follows:
> 
>  <http://svn.x-port.net/svn/public/samples/specifications/xforms/1.0/fc-output-evaluation-context.html> 
> 
> 
> The changes are minor and are only needed because we're trying to
> achieve a standard 'format' for our tests, to make it easier to run
> them with Selenium. In this case the display will be 'Test 1:ok'.
> 
> The test can be run in Selenium by loading the formsPlayer test suite:
> 
>  <http://svn.x-port.net/svn/public/testsuite/selenium/core/TestRunner.html?test=../tests/TestFormsPlayer.html> 
> 
> 
> and then choosing the test 'TestXForms10FcOutputEvaluationContext' in
> the left pane. Click on 'Selected' in the right pane to run only this
> test.
> 
> Regards,
> 
> Mark
> 
> On 02/04/07, Aaron Reed <aaronr@us.ibm.com> wrote:
>>
>> Hi,
>>
>> formsPlayer and XSmiles don't handle this testcase, but I think that it
>> is a valid one.  The general question is, "should the xforms contents of
>> an output with @value have no context node with which to evalutate their
>> xpath expressions (since the output has no binding attributes) or should
>> they inherit the context node that the output used to evaluate its
>> @value expression?  Mozilla supported this at one time but regressed it
>> so now I'm wondering if it is worth fixing if no one else handles this
>> like Mozilla.
>>
>> Here is an example form:
>>
>> <?xml version="1.0"?>
>> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
>> "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
>> <html xmlns="http://www.w3.org/1999/xhtml"
>> xmlns:html="http://www.w3.org/1999/xhtml"
>> xmlns:ev="http://www.w3.org/2001/xml-events"
>> xmlns:xforms="http://www.w3.org/2002/xforms" xml:lang="en">
>>    <head>
>>      <title>Output Value Context</title>
>>      <xforms:model>
>>        <xforms:instance xmlns="">
>>          <data xmlns="">
>>            <value>X</value>
>>          </data>
>>        </xforms:instance>
>>      </xforms:model>
>>    </head>
>>    <body>
>>      <div>
>>        <p>
>>        This testcase test whether an output with a value attribute 
>> sets the
>>        correct context for its children (the label). The context should
>> be its
>>        parent's context.
>>      </p>
>>        <p>
>>        I believe the following should display "X X Y":
>>      </p>
>>        <xforms:group ref="value">
>>          <xforms:output ref="."/>
>>          <xforms:output value="'Y'">
>>            <xforms:label ref="."/>
>>          </xforms:output>
>>        </xforms:group>
>>      </div>
>>    </body>
>> </html>
>>
>> Thanks for any guidance,
>> --Aaron
>>
>>
>>
>>
>>
> 
> 

Received on Monday, 2 April 2007 22:12:47 UTC