- Required fields must be in order and have no key. - Optionals must have a key. - Vec (or unpredictable sized) types can not have a value after it, including optionals. ```rust enum Actions { Spawn(SpawnAction), } struct SpawnAction { Actor: ActorType, Position: Vec2, Health: Option<u32>, } ``` ``` /spawn frog 0 0 0 health 10 ```