[`MotionLayout`](https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout)uses a*motion scene* file to define a motion sequence. A motion scene file is an XML file that specifies all the aspects of a motion sequence. The`<MotionLayout>`node in the layout file has an`app:layoutDescription`attribute that points to the motion scene file.

This reference is not comprehensive. It provides information on the most important motion scene file elements and their most commonly used attributes.

[`<MotionScene>`](https://developer.android.com/training/constraint-layout/motionlayout/ref/motionscene)
:   The root element of a motion scene file.

[`<ConstraintSet>`](https://developer.android.com/training/constraint-layout/motionlayout/ref/constraintset)
:   Specifies the positions and attributes of all views at one point in a motion sequence.

[`<Constraint>`](https://developer.android.com/training/constraint-layout/motionlayout/ref/constraint)
:   Specifies the location and attributes of one element of a motion sequence.

[`<Transition>`](https://developer.android.com/training/constraint-layout/motionlayout/ref/transition)
:   Specifies the beginning and end states of a motion sequence, the desired intermediate states, and the user interactions that trigger the sequence.

[`<OnClick>`](https://developer.android.com/training/constraint-layout/motionlayout/ref/onclick)
:   Specifies the action to perform when the user taps a view.

[`<OnSwipe>`](https://developer.android.com/training/constraint-layout/motionlayout/ref/onswipe)
:   Specifies the action to perform when the user swipes on the layout.

[`<KeyFrameSet>`](https://developer.android.com/training/constraint-layout/motionlayout/ref/keyframeset)
:   Specifies location and attributes for views over the course of the motion sequence.

[`<KeyPosition>`](https://developer.android.com/training/constraint-layout/motionlayout/ref/keyposition)
:   Specifies a view's location at a specific moment during the motion sequence.

[`<KeyAttribute>`](https://developer.android.com/training/constraint-layout/motionlayout/ref/keyattribute)
:   Specifies a view's attributes at a specific moment during the motion sequence.