When you manipulate objects, only the selected elements and their relations are affected. The reason the cube doesn't move until you set keyframes on it is because you haven't established a relationship prior.
When an object is keyframed by position, orientation, or scale, it's values are relative to it's parent. If the object does not have a parent, then the values are relative to the world origin. This applies to all objects except 2D/3D skeleton chain effectors which always use global coordinates by default.
If you change the order of the steps you listed, you'll get different results to illustrate the workings:
1) Get a null and cube and put them in the same place as before.
2) Select the cube and set a translation keyframe.
3) Select only the null and rotate it. Notice the cube follows because it's trying to maintain the relationship between it's keyframed values and it's parent - the null.
4) Select the cube. Motion > FcrvReset > Object > all.
5) Select the null and rotate it. Notice the cube no longer follows.
In SI3D, objects don't move unless they've established a relationship with some other element in the scene. Once a relationship is established, everybody plays follow the leader. When you select objects in branch mode, you establish a temporary relationship that tells all the children to follow the parent object. When the objects are deselected, the realtionship is destroyed and behaviour returns to the pre-selected state.
Hope this helps,
Matt
Matt Lind
Animator / Technical Director
Softimage certified instructor:
Softimage|3D
Softimage|XSI
speye_21@hotmail.com