W3C home > Mailing lists > Public > public-xformsusers@w3.org > March 2019

Re: copy action

From: Steven Pemberton <steven.pemberton@cwi.nl>
Date: Thu, 21 Mar 2019 16:30:50 +0100
To: public-xformsusers@w3.org, "Steven Pemberton" <steven.pemberton@cwi.nl>
Message-ID: <op.zy0ddohmsmjzpq@steven-xps>
So we discussed this in the call, and I thought about an example to  
illustrate the effect using <insert/>, but I'm still not happy.

	  <trigger label="Copy value">
	    <action ev:event="DOMActivate">
	      <setvalue ref="total" value="instance('source')/total"/>
	    </action>
	  </trigger>

	  <trigger label="Copy content">
	    <action ev:event="DOMActivate">
	      <insert ref="address" origin="instance('source')/address"/>
	      <delete ref="address[1]"/>
	    </action>
	  </trigger>

 From an abstract point of view, it is doing something different, removing  
the element, and replacing it with something else. I still would prefer  
something that leaves the referenced element, and replaces its content  
with the content of another element:

	  <trigger label="Copy content">
	    <action ev:event="DOMActivate">
	      <replace ref="address" with="instance('source')/address"/>
	    </action>
	  </trigger>

(This is only a strawman; <setcontent/> would also be fine).

I agree that there are some issues to discuss, such as what to do with  
attributes, but I still think this is more obvious than the insert/delete  
route.

Steven


On Wed, 20 Mar 2019 11:47:30 +0100, Steven Pemberton  
<steven.pemberton@cwi.nl> wrote:

> The funniest things come to you just as you are falling asleep.
>
> I was thinking how if you had a hidden select1 with an itemset with  
> <copy/>, and then used a setvalue to change the value of the select1,  
> you could use it to copy whole subtrees from one instance to another,
>
> But then I realised that that just means we are missing a <copy/> action  
> to go alongside <setvalue/>.
>
> Steven
Received on Thursday, 21 March 2019 15:31:16 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:37:51 UTC