An interesting technique you can use with orient constraints is to animate the target object weights specified by the targetObject Wn channels. You can vary the weights from 0 to any value, so that as an animation progresses different target objects can take turns driving a constrained object’s orientation.