Expressions in DCWorkflow are TALES expressions. See TALES Overview for general TALES information. They are used as access guards and for the setting variable values.
[Note: I haven't figured out what all these contexts actually are and what you can use them for. Explanations are is welcome!]
Some of the contexts have slightly different meanings from what is provided for expressions in page templates:
container-- The content object's container
Several other contexts are also provided:
transition-- The transition object being executed
status-- The former status
workflow-- The workflow definition object
scripts-- The scripts in the workflow definition object
state_change objects provide the following attributes, some of which
are duplicates of the above information:
statusis a mapping containing the workflow status. This includes all the variables defined in the variable tab with "store in state" checked.
objectis the object being modified by workflow. (Same as the
workflowis the workflow definition object. (Same as the
transitionis the transition object being executed. (Same as the
old_stateis the former state object. The name of the former state, for example "published", is available as
old_state.getId(). (Note that DCWorkflow defines
statusas different entities; the name of the current
stateis stored in the
status. The word clash is unfortunate; patches welcome.)
new_stateis the destination state object. Use
new_state.getId()to access the new state name.
kwargsis the keyword arguments passed to the doActionFor() method.
getHistory(), a method that returns a copy of the object's workflow history.
getPortal(), which returns the root of the portal.
ObjectMoved, exceptions that can be raised by scripts to indicate to the workflow that an object has been moved or deleted.
getDateTimeis a method that returns the DateTime of the transition.