Arjun,
The following works for me:
https://gist.github.com/ebruchez/c93df1001258a62ec586The action is as follows:
<xf:setvalue
ev:event="xforms-value-changed" observer="checkboxes-control"
if="xxf:split(event('xxf:value')) = '1'"
ref="event('xxf:binding')"
value="'1 2 3'"/>
But I am not sure it does exactly what you want, in that if you select One, then Two and Three are selected, but then you can't deselect Two or Three (they come back if One remains selected).
-Erik