the position of the ball is set in its parent coordinate system, the default is viz.ABS_PARENT. So the ball is always [0,1,0] in the group node's coordinate system which is the same as the box. If you try
Code:
print ball.getPosition(viz.ABS_GLOBAL)
you'll see its position is not [0,1,0] in the global coordinate system