Technical
Digest
When creating web content (a page, file, image, etc.), a workflow is a series of ordered steps that the content must go through to be quality-checked, and either approved, modified, or disapproved by the appropriate user (an approver) before being publish-ready. Workflows can be customized or created from scratch. Workflows provide Cascade Server users with a customizable, assignable method of assuring that content (any asset) is checked multiple times by multiple users before being published. The resulting diversity of input ensures that content is accurate and presented in a professional manner.
All users may initiate a workflow when creating or editing content. Users assume different roles in the workflow process according to their system role. A higher-level user, such as an Approver, reviews the content, and either approves it to be sent to the next step in the workflow, or returns it to the user associated with the previous step for changes. After the content has been approved by all users in the process, a Publisher may then publish the content to a live site. Managers and Administrators have the capability to bypass any of these steps anywhere in the workflow process.
Concept
Using a Workflow
Depending on a user’s role in the system, they will be presented with options to initiate a workflow, review and approve content already in the workflow, or publish the content and exit the workflow.
Initiate a Workflow
When a user creates or edits content, he or she may initiate a workflow. Depending on the options set for the folder or asset factory that the content is created in, the user may have several different workflow options from which to choose.

Review Content in a Workflow
Users that have been assigned Approver roles are responsible for reviewing content in workflow, and then either approving, editing, or disapproving that content. Users that have been assigned Publisher roles are responsible for publishing the content and completing the workflow.
Content in a workflow may appear in the Dashboard as assigned to an individual or as assigned to a group. If assigned to a group, any user in that group may open the workflow page and assign any step of the workflow to him or herself for completion of that step.
Bypass a Workflow
Only users assigned Administrators and Managers may bypass a workflow.

Edit or Delete a Workflow in Progress
Administrators or managers may edit a workflow that is already in progress. Once initiated, a workflow may only be deleted by the initiating user or by an administrator or manager. Deleting a workflow will cause all changes to be lost.
Workflow Notifications
Users may be notified of new workflows or steps awaiting action in an active workflow in three ways.
Via E-mail
The system’s built-in e-mail notification trigger can be used to automatically e-mail the next user or group in the workflow process with a message that includes a history of all prior steps in the workflow, as well as action links specific to the user receiving the e-mail.
Via the Dashboard
The Dashboard provides users with a centrally located repository of workflows waiting for action, any system messages, and messages from other users. Workflows are automatically removed from the Dashboard once they are reassigned. Messages, however, will remain until manually deleted by the user.
Via RSS 
Additionally, users may subscribe to an RSS feed of workflow messages from their Dashboard. To subscribe to this feed, click on the orange RSS icon in the lower right corner of the screen, or paste the URL into any RSS reader.
Workflow Structure
A workflow is a grouping of approval steps that are connected by actions, which are pathways between steps. Steps may result in multiple actions leading to other steps. Actions may be enhanced by triggers, which execute other non-workflow related functions. Once a workflow reaches a step resulting in no further action, the workflow is complete. The asset being used in the workflow is no longer considered ‘in workflow’ and is returned to a normal state.
Steps
The steps in a given workflow are categorized as Ordered Steps, which will be executed in the order in which they are listed in the XML, and Unordered Steps, which must be explicitly indicated by an action. Each step is defined by a number of attributes that inform the system what the step is and what should take place during that step. These attributes are:
Step identifier – used to define transitions from one step to another using the ‘next-id’ attribute of the action
Label – name of the step (visible to the user)
Type – may be system, transition, or edit
Action – determines what the system should do next; transition steps may contain multiple actions
Ordered Steps
These steps are connected by actions that contain the attribute ‘move,’ with a value of ‘forward’ or ‘reverse.’ These types of actions move the asset in the workflow to the next or previous step. Ordered steps will be executed in the order that they are listed in the XML. There are three types of ordered steps:
- System step -
- Must have only one action whose type is ‘auto;’ this action is generally used to run system triggers such as Merging, Publishing, and Versioning.
- Happens automatically and is carried out by the system without user intervention.
- Transition step -
- Will have N different actions representing user choices.
- Represents a user choice.
- Can be assigned to a user or group.
- Edit step -
- An asset in a workflow may be edited only when it is at an edit step in the workflow process.

Unordered Steps
These steps utilize actions that contain the ‘next-id’ attribute to specify which step the action leads to. As they are unordered, these steps do not use actions that contain the ‘move’ attribute (a ‘move’ action would lead to a specific step; unordered steps do not lead to pre-set steps). Unordered steps are not required to be completed in order for a workflow to be complete. Therefore, they should be used for optional steps, such as ‘Edit.’
Actions
One workflow step is connected to another by an action, which is a direct path from a source step to a destination step. While system and edit steps will each only have one action, transition steps are dependent on user intervention, and will typically have multiple actions from which the user may choose, such as Approve, Reject, or Edit.

Each action is defined by a number of attributes that inform the system what the action is and what the action does. These attributes are:
- Action identifier – how the action is defined within the workflow
- Label – name of the action (visible to the user)
- Transition – identifies what step the action leads to
- Triggers – plug-ins that encapsulate some system logic to accomplish a non-workflow related function; more than one trigger may be added to an action
- Parameters – optional elements added to a trigger to further specify the system logic that should occur
Triggers
A trigger executes code while the transition occurs from a source step to a destination step. Cascade Server is equipped with a series of pre-defined triggers, and custom triggers may be added to execute custom code during a transition.

NOTE- A list of available triggers, along with explanations of their uses, can be found in the Workflow Trigger "Reference" section.
FAQs
- How does Cascade Server handle Workflows and Approvals?
The workflow engine is fully customizable to include steps such as submit, approve, and publish. A variety of triggers and actions can be associated with each step in the workflow. The built-in visual workflow builder allows for the creation and management of any type of workflow assigned to any number of users or groups, and unlimited levels of approvals and routing.
A workflow can have an unlimited number of reviewers. They cannot, however, all access the item at once. To avoid the confusion of creating multiple drafts of the same item, workflows progress from one person or group to the next in an organized, predefined manner. Once a workflow has been initiated, only an administrator can edit or cancel the process.
Workflows can be applied at the page or content block level by selecting the appropriate workflow at time of creation, or by editing the workflow selections to a specific page. For pages that are composed of multiple content regions, each region or block can have individual workflow options attached to it.
Because workflows are selected at creation from a set of administrator-defined options, users can be granted the option of bypassing workflow, provided this option has been included on the page or folder level.
- How are Workflow notifications and messages handled by Cascade Server?
Workflow notifications may be received in three different ways, and can be customized according to each user’s personal preferences. Upon login, users are greeted by a personalized dashboard, displaying any pending workflows. This dashboard acts as a home screen, and is easily accessible at all times while working inside Cascade Server. In addition, users and groups can be notified via email. Direct actions can be made from within the email via personalized hyperlinks to the system.
A unique feature of Cascade Server is the dashboard RSS feed. Users wanting immediate notification, but who do not want to clutter up their email inboxes can opt for an RSS feed, accessible through any standard RSS reader, listing all relevant workflows as they are generated. RSS entries hyperlink to the specific actions in the system.
- How do I remove a workflow from an asset?
- Navigate to the asset for which the workflow will be removed
- While in the View tab, click the title of the workflow that appears in the Workflow field
- When the workflow window appears, click the Delete tab
- Confirm by clicking Submit
Technical
Building Workflows
Build A Workflow Using the Workflow Builder
Cascade Server features a built-in visual workflow builder, allowing administrators to create new workflow definitions without writing XML. To build a workflow:
- Select Workflows from the Administration area.
- Click Workflow Builder on the left navigation bar.
- This interface will allow you to visually construct a workflow by breaking it down into its Ordered and Unordered Steps, and add Triggers as necessary.
- Once you have completed creating your workflow, click Submit.
- You will be forwarded to the main Edit Workflow tab, where you may enter the name, location, and any applicable groups.
- Click Submit to save your new workflow.

The Workflow Builder may also be used to edit existing workflows. Select the desired workflow, and click Edit In Workflow Builder on the left navigation bar (when viewing a workflow, this text changes from Workflow Builder to Edit in Workflow Builder).
Create a Workflow From Scratch Using XML
In addition to using the workflow builder, workflows may be written from scratch using XML. To create a workflow:
- Select Workflow Definitions in the Administration area.
- Click ‘Add a New Workflow Definition.’
- Enter or select information in the following tabs:
- Name - Provide a name that best describes how your workflow will be used.
- Parent Container – Select the container in which you want the workflow stored.
- Workflow Type – Select the type of workflow scenario in which the workflow will be involved.
- Applicable Groups – Select the groups that will be allowed to use this workflow definition to start a workflow of their own. (This option gives administrators complete control over who participates in a workflow. Ex.: An administrator can set two ‘edit’ workflows for a folder – one which is applicable to some groups, and another which is applicable to a different set of groups.
- Name - Provide a name that best describes how your workflow will be used.
- Enter the XML to create the workflow definition.
- Click Submit to save.
Add a Workflow Trigger
The Cascade Server workflow builder utilizes centrally managed triggers. For a trigger to be available in a workflow created by the Workflow Builder, the trigger must first be defined and assigned a name in the system-wide trigger base. Defining triggers in this way allows the Java files that contain each trigger’s functionality to be referenced later in the workflow definition.
If you’ve written a new custom trigger or have upgraded Cascade Server without including the default database, you’ll need to add the new triggers before they’ll become available in the Workflow Builder.
- In the Administration are, select ‘Workflows.’
- Click Manage Workflow Triggers.
- All currently available triggers in the default database are shown, along with the ‘Add a Trigger’ option.
- Type in the name of the new trigger and click Submit.
- Your new trigger will now appear on the list and will be available for use within the Workflow Builder.
Adding a trigger using this interface ensures that the triggers will be defined in all workflows created using the Workflow Builder. For workflows created without the Workflow Builder, triggers must be defined individually for each workflow.
Assigning Workflows
Assign a Workflow to an Asset Factory
To have a specific workflow occur every time a certain type of asset is created, it must be attached to an asset factory. Asset factory options are managed in the Administration area.
To attach a workflow to an asset factory:
- In the Administration area, select 'Asset Factories' and choose the desired asset factory.
- Click the Edit tab.
- Under Workflow:
- Workflow Mode - Choose 'As selected below.'
- Workflow definition - Click on the workflow icon to open the workflow chooser. Navigate to the desired workflow, and click Submit to close the window.
- Workflow Mode - Choose 'As selected below.'
- Click Submit to save your changes.

Only one workflow may be attached to an asset factory. For multiple workflow options, select 'Folder Controlled for the Workflow Mode, and attach multiple workflows at the folder level. Users with the appropriate permissions will still be able to bypass a workflow attached to an asset factory.
Assign a Workflow to a Folder
To have a workflow process invoked for any given asset, the workflow must be assigned at the folder level. Multiple workflows can be assigned to a single folder. When an asset is edited, copied, published, or deleted, the system determines which assigned workflows apply to the user's action and allow the user to select from a list of available workflows.
To attach a workflow to a folder:
- In the Home area, use the asset tree on the left to locate and choose the desired folder.
- Click the Workflow tab.
- Under Workflow Options:
- 'None required' - Allows all users to bypass all workflow options.
- 'Inherit from parent folder' - If there are workflows assigned to a parent folder, selecting this button will apply those workflow options to the current folder.
- 'Do not inherit' - Selecting this will prevent workflows from being inherited from a parent folder, and will allow you to assign workflows at current folder.
- 'Apply to child folders' - Checking this box will allow child folders to inherit the workflows set at this folder level.
- If you are adding one or more workflows at this level, click the workflow icon next to Add Workflow to open the Workflow chooser.
- Navigate to the desired workflow and click Submit to close the window.
- You may attach additional Workflows if desired.
- Click Submit to save your changes.

The workflow definition is now attached to the current folder. This means that an action taken on any asset in that particular folder will trigger the workflow process related to that action. For example, if a page is edited in that folder, an ‘Edit’ workflow associated with that folder will be invoked. Unless workflows are turned off at the folder-level, or a user has bypass workflow permissions (based on user roles), users may not edit an asset in that folder without it passing through the selected workflow.
Using Workflows - By Roles
As a Contributor
Users with the role of Contributor are typically responsible for creating or editing content, and generally initiate the workflow process.
Selecting a Workflow
When a Contributor creates or edits an asset, a workflow is usually started. Depending on the options that have been set for that folder or asset factory, the user may have different workflow options to choose from.
To initiate and select a workflow:
- On the Edit screen of the asset, ensure that Workflow is checked on the Run After Edit bar.
- Click Submit.
- After the Link, Spell, and Accessibility checkers have been run, you will be forwarded to the Choose a Workflow screen.
- Select the workflow you would like to initiate, and click Submit.
- You will be forwarded to the Configure Workflow screen, which lists each step in the workflow.
- If there are no preset user or group assignments for each step, or if you would like to change any assigned users, click Choose next to the user icons to select the users you want each step assigned to.
- Click Submit.
- You will be forwarded to the Message screen. Type in the message you wish the next user in the workflow to receive, and click Submit.
- This asset is then locked into the selected workflow process, and will be forwarded to the next user in the workflow.

You may review the workflows you have initiated by navigating to your dashboard (Home), and checking the Workflows Waiting column or tab.
Sending a Message
Using the system to send a message to a user or group is quick and easy. Follow these steps to send a message:
- Select New -> Message from the top navigation menu.
- Choose the User or Group that you would like to receive the message.
- Compose your Subject and Body of the message.
- Click Submit button to send the message.
Deleting a Workflow
Once initiated, a workflow can only be deleted by the initiating user or an Administrator. Deleting a workflow will also cause all changes made to be lost. To delete an active workflow:
- Navigate to your dashboard by clicking Home.
- Select the desired workflow from Workflows or Workflows Waiting.
- Select the Delete tab.
- Click Submit to delete the workflow.
- You will be returned to your dashboard, and the deletion will be verified by the message bar reading 'Delete Successful.
As an Administrator
Administrators may participate in all workflow steps, and may also bypass workflows and edit workflows in progress.
Bypassing a Workflow
Bypassing a workflow is an option available only to Administrator level users.
To bypass a workflow when editing an asset, click Advanced Options, ensure that the Workflow checkbox is unmarked, and click Submit.

Editing a Workflow in Process
Editing a workflow that is already underway is an option available only to Administrators.
To edit the workflow, browse to the user or group in the Administration area, and click the Workflows tab. This allows you to view all current workflows and take appropriate action.
As an Approver
Approvers are responsible for reviewing content in workflows and determining whether it should be approved, rejected, or edited. Content may appear in the dashboard as assigned to an individual, or it may appear as assigned to a group. The asset may be viewed by clicking on the name of the asset. If the asset is assigned to a group, any user in that group may open the workflow page and click Assign to me in order to complete that step of the workflow.
To complete a workflow step:
- After reviewing the changes submitted, click back onto the Workflow screen.
- Select the appropriate Action: Make Changes, Approve to Next Step, or Reject to Previous Step.
- You will be forwarded to the Comments screen. Leave any comments and click Submit.
As a Translator
A Translator is treated by the system as an additional Reviewer of content who, instead of simply reviewing content, may actually add content to the page. For a page that has multiple language outputs, the original user will create the page or make the necessary changes to the primary language, and then pass the asset to a Translator via the workflow.
The Translator may then access the page, create the translation, and then send the page on to the next step in the workflow.
As a Publisher
Publishers are responsible for the final step in a workflow -- publishing the content to a live site. They accomplish this by completing workflows that contain publish triggers, or by selecting assets that they have access to and publishing them.
Technical References
FAQs
- Is there a way to validate Worfklow and Data Definition XML outside of Cascade Server?
- The following XML schemas can be used to accomplish this:
Data Definition Schema (XSD)
Workflow Definition Schema (XSD)
Please right click on the above link and save to your local hard drive.
- The following XML schemas can be used to accomplish this:

