Workflows in the WCMS

On this page:


A workflow is a series of steps that content must go through before it can be created, edited, copied, moved, renamed, deleted, and/or published by users in Cascade CMS. Workflows are built using XML. There is a visual builder within Cascade CMS to help the user create and edit workflows.

Workflows can be used to make sure content is accessible and meets marketing guidelines before being published. Use a workflow to simplify content updates for users by performing certain tasks automatically. For example, a workflow can ensure related content is published automatically.

Learn Cascade CMS workflows

The best method for learning how to create and use Cascade CMS workflows is to copy example workflows and adjust them to fit your needs. This IU Github repository contains several example workflows for you to use. The examples include copy, delete, move/rename, and publishing to staging.

View example workflows

The Workflows IU Github repository also contains walkthroughs that will guide you in creating common Cascade CMS workflows. Walkthroughs include an approval to copy, approval to delete, and an approval to publish. The approval to publish workflow walkthrough shows the use of unordered steps for an approver to send an asset back to the contributor for additional edits.

View workflow walkthroughs

Workflow definition

Cascade CMS calls the actual workflow a workflow definition. A workflow definition is broken down into a group of steps that are connected by actions. Site Managers can create, edit, and delete workflow definitions from the Manage Site area of Cascade CMS.

A workflow definition is triggered by a user action. This user action is called a "type" in Cascade CMS. There are five types: create, edit, move/rename, copy, and delete. Types are selected when creating a workflow definition and can be changed at any time.

There are three parts to a workflow definition: steps, actions, and triggers.


A step is an individual moment in a workflow where one or more actions are available. Certain steps have step owners - users or groups responsible for advancing the workflow to the next step by choosing an action.

  • Ordered steps are executed in the order they are defined. In the workflow definition XML, ordered steps are connected by actions containing the attribute move with a value of forward or reverse.
  • Unordered steps are only encountered when selected by the user. In the workflow definition XML, unordered steps are connected by actions containing the next-id attribute to specify which step the action leads to.

All steps, whether ordered or unordered, fall into one of the following three categories:

  • System step: System steps are executed by the system without any user intervention. System steps can have only a single action (whose type is "auto"), but can execute multiple triggers, such as merge, version, and publish. The first and last steps in any workflow should be system steps. It's possible to have an automatic workflow composed entirely of system steps.
  • Transition step: Transition steps contain one or more actions representing user choices. Transition steps have a default user or group assignment that can be overridden by triggers to assign step ownership dynamically.
  • Edit step: The working copy of an asset in workflow can only be edited during an edit step. Edit steps are usually unordered steps, for example, sending a workflow back to the initiator for additional changes. Like system steps, edit steps contain only a single action which serves to determine the next step.

View example system steps


Workflow steps are linked by actions, creating pathways from an initial step to a final step. While system and edit steps will each only have one action, transition steps require user intervention and will typically have multiple actions to choose from, such as approve, reject, or edit.

Each action is defined by a number of attributes:

  • Action identifier: The unique identifier of the action within a step
  • Action label: The name of the action (visible to the user)
  • Transition: Identifies which step the action leads to
  • Available triggers: Triggers perform tasks when their associated action is selected.


Triggers perform tasks when their associated action is reached. Triggers can be customized with parameters.

View example triggers

This is document bhje in the Knowledge Base.
Last modified on 2021-11-22 12:00:18.