The commands are used to move an Item from one state to another. You can think of them as links between states. Command nodes are based on the System / Workflow / Command template which has a ‘Next State’ field.
Adding commands as children to the state node defines commands that can be executed on an Item in a given state. When the command is executed, the Item moves to the state defined as the state in the ‘Next State’ field.
Let’s look at the Approve command of the Reviewing state:
![Approve command](/SdnArchive/upload/02_approve_command_001.png)
You can see that it has ‘Next state’ set to ‘Simple/Approving’, that is the Approving state of the Simple workflow. Contrary to this, the Reject command has ‘Simple/Editing’ as its next state.
What does this all mean? When a document is in the Reviewing state, the User with appropriate security rights will be able to perform two workflow commands: Approve and Reject. Approve will send the Item forward to the next state, and the Reject will send the Item back to the Editing state.