Workflow XML reference

This language reference describes the elements and attributes that comprise a workflow definition.

This topic is organized in tables, with each table describing a major portion of the Workflows schema—the elements and their attributes, default values, the XML attribute data types, and whether a particular attribute is required. Table 1 lists the reference tables.
Table 1. Reference tables for the Workflows XML schema
Element type Description Where described

Workflow metadata elements

The elements that make up the workflow metadata

Table 2

Sub-elements for a configuration type workflow

For a configuration type workflow, these sub-elements are required

Table 3

Start of change

Sub-elements for a provisioning type workflow

End of change
Start of change

For a provisioning type workflow, these sub-elements are required

End of change
Start of change

Table 4

End of change
Workflow upgrade elements The elements that define the workflow upgrade options

Table 5

Manifest elements

The elements that make up the manifest

Table 6

Step elements: Elements to use for defining all steps

The elements to use for defining all steps

Table 7

Step elements: Additional sub-element for parent steps

The step sub-element, which is used to identify the containing step as a parent step

Table 8

Step elements: Additional sub-elements for leaf steps

The sub-elements to use for defining a leaf step, which is a step that does not contain step elements

Table 9

Start of changeStep elements: Additional sub-elements for REST stepsEnd of change Start of changeThe sub-elements to use for defining a step that issues a REST request, such as GET or PUT. This type of step is referred to as a REST step. End of change Start of changeTable 10End of change

Step elements: Additional sub-elements for steps that invoke another workflow

The sub-elements to use for defining a step that invokes another workflow, which is referred to as the called workflow

Table 11

Variable definition elements

The elements that make up a variable definition

Table 12

Variable definition type-specific sub-elements

The type-specific sub-elements that make up a variable definition

Table 13

Start of changeatCreate elementEnd of change Start of changeFor users of the Create Workflow REST service, the atCreate element provides additional options for working with variables.End of change Start of changeTable 14End of change

In the tables that follow, the elements are listed in the order in which they are required by the schema. Though you can omit optional elements, the elements that you specify must follow the order in which the elements are presented. In contrast, the attributes within an element can be specified in any order.

Workflow metadata elements summary

Table 2. Workflow metadata elements
Element name Description Required or optional Type Supported attributes

workflowInfo

Contains the workflow metadata.

Required.

Contains the following sub-elements:
  • workflowID (required)
  • workflowDescription (required)
  • workflowVersion (required)
  • vendor (required)
  • configuration or general (optional)
No attributes are supported for this element.

workflowID

A short, arbitrary value that identifies the workflow.

Required.

nonNullString

The following attributes are supported for the workflowID element:
scope
Indicates the singleton scope for the workflow. The following values are valid:
system
A maximum of one instance of this workflow can exist on any one system in the sysplex.
sysplex
A maximum of one instance of this workflow can exist in the sysplex.
none
No limit exists for the number of instances of this workflow. For a callable workflow, this setting means that a new instance is always created on the calling system.

The default setting is none. Omitting the scope attribute has the same effect as the default setting.

isCallable
Indicates whether the workflow can be called by another workflow, and, if so, the callable range for the workflow. The following values are valid:
system
This workflow can be called only by another workflow that is running on the same system.
sysplex
This workflow can be called by any workflow that is running in the same sysplex.

workflowDescription

A short description of the workflow.

Required.

nlsString

No attributes are supported for this element.

workflowVersion

The version of this workflow definition file. Update this value whenever you change any portion of the workflow definition file, including changes to the primary XML file or any sub-files or referenced files.

The Workflows task caches only the latest version of any imported workflow definition file. Therefore, to ensure that the most current version is used, you must update the version value whenever you modify the workflow definition. For this reason, when you author a workflow definition file, you might want to complete the development phase on a workstation before you import the workflow definition into the Workflows task.

Required.

nonNullString

No attributes are supported for this element.

vendor

The name of the workflow provider.

Required.

nonNullString

No attributes are supported for this element.
Workflow category is a classification of the activities to be performed in the workflow. Specifying a workflow category element is optional. By default, the workflow category is general.
To indicate a category, specify one of the following elements:
configuration
A workflow that is used to configure system software is classified as a configuration workflow.
provisioning
A workflow that is used to provision system software is classified as a provisioning workflow.
general
All other workflows are classified as general workflows.

The category elements are described in the next rows.

Configuration A workflow that is used to configure system software is classified as a configuration workflow. Optional. Contains the sub-elements listed in Table 3. No attributes are supported for this element.
Provisioning A workflow that is used to provision system software is classified as a provisioning workflow. Optional. Contains the sub-elements listed in Table 4. No attributes are supported for this element.
General All other workflows are classified as general workflows. Optional. Empty No attributes are supported for this element.
Table 3. Sub-elements for a configuration type workflow
Element name Description Required or optional Type

productID

A short, arbitrary value that identifies the workflow.

Required.

nonNullString

productName

The name of the product

Required.

nonNullString

productVersion

The product version

Required.

nonNullString

Start of change
Table 4. Sub-elements for a provisioning type workflow
Element name Description Required or optional Type

productID

Identifier of the product or component that is being provisioned by the workflow, such as the product identifier (PID) or function modification identifier (FMID).

Required.

nonNullString

productName

Name of the product or component that is being provisioned by the workflow.

Required.

nonNullString

productVersion

Version and release of the product or component that is provisioned by the workflow.

Required.

nonNullString

softwareType Type of software to be provisioned by the workflow. Required.  
End of change

Workflow upgrade elements summary

Table 5. Workflow upgrade elements
Element name Description Required or optional Type

preserveOptions

Contains the workflow upgrade options.

Optional.

Contains the following sub-elements:
  • version (required)
  • variableSet (optional)
  • stepSet (optional)
  • workflowHistory (optional)
  • workflowNotes (optional)
  • include (required)
  • exclude (optional)
  • upgradeNotes (optional)

version

Identifies the workflow version that can be upgraded by this workflow definition file.

Required; at least one.

Contains the following sub-elements:
  • value (required)
  • type (required)

variableSet

The variables to copy to new workflow instance.

Optional.

Contains the following sub-element:
  • defaultChecked (optional)

stepSet

The steps to copy to new workflow instance.

Optional.

Contains the following sub-element:
  • defaultChecked (optional)

workflowHistory

Specifies whether to copy the workflow history from the existing workflow to the new instance.

Optional.

Contains the following sub-element:
  • defaultChecked (optional)
workflowNotes Specifies whether to copy the workflow notes from the existing workflow to the new instance. Optional. Contains the following sub-element:
  • defaultChecked (optional)

include

Specifies the step or variable defined by prior workflow definition file to be copied. Can be specified multiple times. It supports regular expression or variable name.

Required.

Contains the following sub-elements:
  • name (optional)
  • mapTo (optional)
  • regExp (optional)
exclude Specifies the variables to exclude from the set generated by <include> elements. Optional. Contains the following sub-element:
  • name (required)

Manifest elements summary

Table 6. Manifest elements summary table
Element name Description Required or optional Type Supported attributes

translatedTextFiles

Contains the language file definitions.

Optional.

If specified, it must contain the following sub-elements:
  • bundle (required)
  • language (required)

No attributes are supported for this element.

bundle

Contains the set of language files for the bundle

Required if the translatedTextFiles element is specified.

A workflow can contain 1 – 500 bundles.

A sequence of language elements.

The following attribute is supported for the bundle sub-element:
name
The name of the bundle. The name is required, and must be a single-token string.

language

Locates a file for a particular language.

Required if the bundle element is specified.

A bundle can contain 1 – 10 languages.

Empty

The following attributes are supported for the language sub-element:
name
The language identifier as defined in the XML standard and RFC 3066, but using only the language portion without the country suffix. The identifier is required, and must be unique within a bundle.
path
The path name of the language file. The path is required, and its data type must be a nonNullString.

A language file can be a UNIX file, a sequential data set, or a PDS member. The path name format is described in References to external files.

Step elements summary

Table 7. Step elements summary table: Elements to use for defining all steps
Element name Description Required or optional Type Supported attributes

step

Contains attributes of a step. Up to 500 step elements can be defined in a workflow.

Required. At least one step must be defined.

The step element can contain the following sub-elements:
  • title (required)
  • description (required)
  • prereqStep (optional)
  • If a step is a parent step (contains step elements), use the sub-element listed in Table 8 to define the step.
  • If a step is a leaf step (contains no step elements), use one or more of the sub-elements listed in Table 9 to define the step.
  • If a step invokes another workflow, use one or more of the sub-elements listed in Table 11 to define the step.
The following attributes are supported for the step element:
name
The name of the step. The name is required, and must be a string consisting of letters (uppercase or lowercase), numeric digits, the hyphen, and the underscore character. This value must begin with a letter, and must be unique within the workflow.
optional
Indicates whether the step is optional. This attribute is optional. If specified, its data type must be Boolean. By default, the value is false.

title

A short description of the task.

Required.

nlsString

No attributes are supported for this sub-element.

description

A more detailed description of the step.

Required.

nlsRichString

No attributes are supported for this sub-element.

prereqStep

Identifies a step that must be completed before this step can be performed. Up to 499 prerequisite steps can be defined for a step.

Optional.

Empty

The following attribute is supported for the prereqStep sub-element:
name
Name of the prerequisite step. The name is required, must refer to a defined step, and must be a string consisting of letters (uppercase or lowercase), numeric digits, the hyphen, and the underscore character. This value must start with a letter.
Table 8. Step elements summary table: Additional sub-element for parent steps
Element name Description Required or optional Type Supported attributes

step

A substep. Existence of this sub-element defines a parent step. This sub-element is subject to the 500 step maximum.

The step sub-element is mutually exclusive with template, instructions, variableValue, skills, and weight.

Required.

Recursive step definition as defined by this table.

No attributes are supported for this sub-element.

Table 9. Step elements summary table: Additional sub-elements for leaf steps
Element name Description Required or optional Type Supported attributes
Start of changerunAsUserEnd of change Start of changeSpecifies the user ID under which the step is to be performed. This value is used for automated steps; it allows for a step to be performed by a user other than the step owner.

When not specified, the default is the step owner user ID.

End of change
Start of changeOptional.End of change Start of changerunAsUserTypeEnd of change Start of change

None.

End of change
condition A conditional step.

Optional.

Condition for performing this step.
The following attributes are supported for the condition sub-element:
expression
Provides an expression based on input variables (global or instance) and Boolean logic. When the expression resolves to true for the current workflow instance, the step can be performed. An expression is required, and must have the data type conditionType.
description
Describes the condition that must be satisfied before the step can be performed. A description is required.
targetState
The state to which the step is set when the expression evaluates to true. The valid values are Ready and Skipped. The target state is optional. If not specified, the default is Ready .

variableValue

References a variable that is defined earlier.

The variableValue sub-element is mutually exclusive with the step sub-element.

Optional.

Empty

The following attributes are supported for the variableValue sub-element:
name
The name of the referenced variable. The name is required, and must be a string consisting of letters (uppercase or lowercase), numeric digits, and the underscore character. This value must begin with a letter.

The name and scope combination must refer to a defined variable.

scope
The scope of the referenced variable. The scope is optional. If specified, the value must be instance or global. The default is instance.

The name and scope combination must refer to a defined variable.

required
Whether the variable must have a value for this step. The required attribute is an optional, Boolean value. If not specified, the default is false.

When set to true, the Workflows task does not allow the user to complete the step without providing a value (if a default is not defined in the XML).

noPromptIfSet
Whether the variable widget is displayed in read-only mode, if the variable already has a value. The noPromptIfSet attribute is an optional, Boolean value. If not specified, the default is false, that is, always display the variable widget in read/write mode.

instructions

Detailed documentation on what the user must do to perform the step. This sub-element is mutually exclusive with the step sub-element.

Required.

nlsRichVelocityString

The following attribute is provided for the instructions sub-element:
substitution
Indicates whether instructions contain variable substitution. This attribute is an optional, Boolean value. If not specified, the default is false.

A value of true must be specified for the Workflows task to allow the variable substitution. If true is specified, at least one variableValue sub-element must be specified for the step.

weight

The relative difficulty of the step compared to other steps within this workflow.

The weight sub-element is mutually exclusive with step sub-element.

Required.

Integer value 1 - 1000.

No attributes are supported for this sub-element.

skills

The type of skills that are required to perform this step.

The skills sub-element is mutually exclusive with step sub-element.

Optional.

nlsString

No attributes are supported for this sub-element.

autoEnable

Indicates whether the step is to be performed automatically when all prerequisite steps are completed, and no user inputs are required.

If autoEnable is not specified, the default is false.

Optional.

Boolean

No attributes are supported for this sub-element.

canMarkAsFailed

Indicates whether the step can be marked as Failed manually by the step owner.

If canMarkAsFailed is not specified, the default is false.

When set to true, the Review Instructions page in the Step Perform wizard includes the option to allow the step owner to mark the step as Failed manually. When false, this option is not displayed to the user.

Optional.

Boolean

No attributes are supported for this sub-element.

Start of changerestEnd of change Start of changeIdentifies the step as a REST step. End of change Start of changeOptional.End of change Start of changeString.End of change Start of changeThe sub-elements and attributes of a REST step are described in Table 10.End of change

template

Identifies the step as a template step, which is a step that runs an executable program, such as a JCL job, a REXX exec, or a UNIX shell script.

The template sub-element is mutually exclusive with the step sub-element.

Optional.

The template sub-element must contain one of the following sub-elements:
inlineTemplate
A file template or executable template that is specified in the workflow definition file. The value must be type velocityString.
fileTemplate
Path name of the external file that contains the template. The contents of the file are treated as type velocityString.
The following attribute is supported for both the inlineTemplate and fileTemplate sub-elements:
substitution
Indicates whether the template contains variable substitution. This attribute is an optional, Boolean value. If not specified, the default is false.

A value of true must be specified for the Workflows task to allow the variable substitution. If true is specified, at least one variableValue sub-element must be specified for the step.

Start of change

submitAs

End of change
Start of change

Indicates the type of executable program.

End of change
Start of change

Optional.

End of change
Start of change
“TSO-REXX”
Run a REXX exec program in real time.
“TSO-UNIX-REXX”
Run a REXX exec program for the UNIX environment in real time.
“TSO-UNIX-shell”
Run a UNIX shell script in real time.
“JCL”
Submit a JCL job for batch processing on z/OS. The results are indicated in the job log.
“TSO-REXX-JCL”
Submit a JCL job that contains a REXX program. The program runs as a batch job on z/OS; the results are indicated in the job log.
“shell-JCL”
Submit a JCL job that contains a UNIX shell script. The program runs as a batch job on z/OS; the results are indicated in the job log.

A REXX exec that is written to be run in a UNIX shell environment should be submitted as “TSO-UNIX-shell” or “shell-JCL”.

End of change
Start of change
The following attribute is supported for the template element when the submitAs sub-element is “JCL”, “TSO-REXX-JCL”, or “shell-JCL”:
maxRC
Maximum return code value to consider successful. This attribute is optional. If specified, the value must be an integer in the range 0 - 4095. If not specified, the default is 0.
End of change

maxLrecl

For a step that submits a job, this value specifies the maximum record length, in bytes, for the input data for the job.

This value is used when the step is performed automatically (autoEnable=true). If the step is performed manually, the user can optionally specify the maximum record length on the Edit JCL page in the Workflows task.

Optional.

Integer value 80 - 1024. The default is 1024 bytes.

No attributes are supported for this sub-element.

output

Indicates the default name of the output property file that is produced by the step (a data set or UNIX file). The output file can contain variables and values that are used by subsequent steps. The Workflows task allows the user to modify the file name and location, as needed.

Optional.

String.
The following attributes are supported for the output sub-element:
substitution
Indicates whether the output file name contains variable substitution. This attribute is an optional, Boolean value. If not specified, the default is true.
needResolveConflicts
Indicates whether the user is prompted to resolve variable conflicts from the output file. This attribute is an optional, Boolean value. If not specified, the default is true.

If variable conflicts exist, the user is prompted to resolve the conflicts. A value of true must be specified for the Workflows task to display the variables in the Input Variables page.

If set to false, the Workflows task uses the output file variables in place of any existing values without prompting the user. This setting applies to instance variables only; global variables are not overridden by variables in the output file.

Start of change

successPattern

End of change
Start of changeRegular expression that is returned for a successful program execution. This element is required. You must specify one (and only one) regular expression for a successful program completion.End of change Start of change

Required.

End of change
Start of changeString.End of change Start of change

No attributes are supported for this sub-element.

End of change
Start of change

failedPattern

End of change
Start of changeOptional regular expression that can be returned for program execution failures. You can omit this element or specify up to 100 different specifications for failedPattern. This property might be null.End of change Start of change

Optional.

End of change
Start of changeString.End of change Start of change

No attributes are supported for this sub-element.

End of change
Start of change

outputVariablesPrefix

End of change
Start of changeFor a step that creates a variable, this property contains a prefix that identifies a string as a variable. This property might be null.End of change Start of change

Optional.

End of change
Start of changeString.End of change Start of change
The following attribute is supported for the outputVariablesPrefix sub-element:
needResolveConflicts
Indicates whether the user is prompted to resolve variable conflicts from the program output variables. This attribute is an optional, Boolean value. If not specified, the default is true.

If variable conflicts exist, the user is prompted to resolve the conflicts. A value of true must be specified for the Workflows task to display the variables in the Input Variables page.

If set to false, the Workflows task uses the output file variables in place of any existing values without prompting the user. This setting applies to instance variables only; global variables are not overridden by variables in the output file.

End of change
Start of change

scriptParameters

End of change
Start of changeFor a step that runs a program, this property contains the input parameters that can be set by the step owner. This property might be null.
The following sub-elements are included on the scriptParameters element:
  • description
  • value
End of change
Start of change

Optional.

End of change
Start of changeString.End of change Start of change

No attributes are supported for this sub-element.

End of change
Start of changedescriptionEnd of change Start of changeText description of the parameter in the scriptParameters element, such as its intended use or recommended value.End of change Start of changeRequired if the scriptParameters element is specified.End of change Start of changeString.End of change Start of change

No attributes are supported for this sub-element.

End of change
Start of changevalueEnd of change Start of changeValue of the parameter in the scriptParameters element. End of change Start of changeRequired if the scriptParameters element is specified.End of change Start of changeString.End of change Start of change

No attributes are supported for this sub-element.

End of change
Start of change

procName

End of change
Start of changeFor a step that runs a program under TSO/E, this property contains the name of the logon procedure that is used to log into the TSO/E address space. If no value was specified for the step, the default is IZUFPROC.End of change Start of change

Optional.

End of change
Start of changeString.End of change Start of change
The following attribute is supported for the procName sub-element:
substitution
Indicates whether the procedure name contains variable substitution. This attribute is an optional, Boolean value. If not specified, the default is false.
End of change
Start of change

regionSize

End of change
Start of changeFor a step that runs a program under TSO/E, this property contains the region size for the TSO/E address space. If no value is specified for the step, the default is 50000.End of change Start of change

Optional.

End of change
Start of change

Integer value 50000 - 2096128.

End of change
Start of change

No attributes are supported for this sub-element.

End of change
Start of change

timeout

End of change
Start of changeFor a step that runs a REXX exec or UNIX shell script, this property contains the maximum amount of time that the program can run before it is ended by a timeout condition.End of change Start of change

Optional.

End of change
Start of change

Integer value 60 - 3600.

End of change
Start of change

No attributes are supported for this sub-element.

End of change

saveAsDataset

Data set name (fully qualified, no quotations) specifying where to save the file after the user edits it.

When a file is generated, the presence of this element results in the save as data set option being presented to the user, primed with the element value, if specified.

When a program is run, this element can be used as the default value. However, the Workflows task widget is always displayed to the user.

Optional.

velocityFileString

The following attribute is supported for the saveAsDataset sub-element:
substitution
Indicates whether the data set name contains variable substitution. This attribute is an optional, Boolean value. If not specified, the default is false.

A value of true must be specified for the Workflows task to allow the variable substitution. If true is specified, at least one variableValue sub-element must be specified for the step.

saveAsUnixFile

Path name that specifies where to save the file after the user edits it.

When a file is generated, the presence of this element results in the save as UNIX file option being presented to the user, primed with the element value, if specified.

When a program is run, this element can be used as the default value. However the Workflows task widget is always displayed to the user.

Optional.

velocityFileString

The following attribute is supported for the saveAsUnixFile sub-element:
substitution
Indicates whether the path name contains variable substitution. This attribute is an optional, Boolean value. If not specified, the default is false.

A value of true must be specified for the Workflows task to allow the variable substitution. If true is specified, at least one variableValue sub-element must be specified for the step.

predefinedVariable

For a step that submits a job, this sub-element sets a variable in the body of the job. A predefined variable is treated as a string substitution. The substitution applies to the current step only.

You can specify multiple predefined variables per step.

Optional. predefinedVariableType
The following attribute is supported for the predefinedVariable sub-element:
name
Name of the predefined variable. The name is required, and must be of data type string.

To avoid overriding the variables defined for the workflow, use a unique name for the predefined variable.

Start of change

feedbackItem

End of change
Start of changeOptionally includes a feedback form for the step in the Workflows task with questions for the step owner to answer. Up to 100 feedback items (questions) can be specified for a step.End of change Start of changeOptional.End of change Start of changefeedbackItemTypeEnd of change Start of change
The following attributes are supported for the feedbackItem sub-element:
name
Name of the feedback question. The name is required, and must be of data type string.
required
Indicates a required question. This attribute is an optional, Boolean value. If not specified, the default is false.
End of change
Start of change

question

End of change
Start of changeThe question to be asked (a text string). For example: How difficult was this step?End of change Start of changeRequired, if the element feedbackItem is specified.End of change Start of changeString.End of change Start of change

No attributes are supported for this sub-element.

End of change
Start of change

answers

End of change
Start of changeAnswer format, which is defined by including one of the following sub-elements:
singleSelect
One answer (and only one) can be selected from the available choices.
multipleSelect
More than one answer can be selected from the available choices.
text
No choices are provided; the user answers the question by entering a text value.
End of change
Start of changeRequired, if the element feedbackItem is specified.End of change Start of changeanswersTypeEnd of change Start of change

No attributes are supported for this sub-element.

End of change
Start of change

singleSelect

End of change
Start of changeA sub-element of the element answers. Indicates that one answer (and only one) can be selected from the available choices listed in answers.End of change Start of changeOptional.End of change Start of changeselectTypeEnd of change Start of change
The following attribute is supported for the multipleSelect sub-element:
hasOtherAnswer
Displays the choice "Other" as a selectable answer. Is displayed last in a list of multiple choices.
End of change
Start of change

label

End of change
Start of changeOne or more answers to be listed as selectable choices for the question. At least one label (answer) must be specified, up to a maximum of 50.End of change Start of changeRequired. End of change Start of changelabelTypeEnd of change Start of change
The following attributes are supported for the label sub-element:
value
Answer that can be selected. Required.
required
Indicates a required question. This attribute is an optional, Boolean value. If not specified, the default is false.
End of change
Start of change

multipleSelect

End of change
Start of changeA sub-element of the element answers. Indicates that more than one answer can be selected from the available choices.End of change Start of changeOptional.End of change Start of changeselectTypeEnd of change Start of change
The following attribute is supported for the multipleSelect sub-element:
hasOtherAnswer
Displays the choice "Other" as a selectable answer. Is displayed last in a list of multiple choices.
End of change
Start of change

label

End of change
Start of changeOne or more answers to be listed as selectable choices for the question. At least one label (answer) must be specified, up to a maximum of 50.End of change Start of changeRequired. End of change Start of changelabelTypeEnd of change Start of change
The following attributes are supported for the label sub-element:
value
Answer that can be selected. Required.
required
Indicates a required question. This attribute is an optional, Boolean value. If not specified, the default is false.
End of change
Start of change

text

End of change
Start of changeA sub-element of the element answers. Indicates that no choices are provided; the user answers the question by entering a text value.End of change Start of changeOptional.End of change Start of changeString.End of change Start of change

No attributes are supported for this sub-element.

End of change
Start of change
Table 10. Step elements summary table: Additional sub-elements for REST steps
Element name Description Required or optional Type Supported attributes
httpMethod Indicates the HTTP method that is used for issuing the REST request. The following values are valid:
  • GET
  • PUT
  • POST
  • DELETE.

Required.

String None.
schemeName Scheme name that is associated with the REST request. If specified, this element must be set to "http." Optional. String None.
hostname Host name or IP address of the system to which the REST request is directed. For example: www.ibm.com. Optional String The following attribute is supported for the hostname sub-element:
substitution
Indicates whether the host name contains variable substitution. This attribute is an optional, Boolean value. If not specified, the default is false.

A value of true must be specified for the Workflows task to allow the variable substitution. If true is specified, at least one variableValue sub-element must be specified for the step.

port Port number to use for the REST request. Optional. String The following attribute is supported for the post sub-element:
substitution
Indicates whether the port contains variable substitution. This attribute is an optional, Boolean value. If not specified, the default is false.

A value of true must be specified for the Workflows task to allow the variable substitution. If true is specified, at least one variableValue sub-element must be specified for the step.

uriPath URI path to use for the REST request. Required. String The following attribute is supported for the uriPath sub-element:
substitution
Indicates whether the URI path contains variable substitution. This attribute is an optional, Boolean value. If not specified, the default is false.

A value of true must be specified for the Workflows task to allow the variable substitution. If true is specified, at least one variableValue sub-element must be specified for the step.

queryParameters For a GET or POST request, this element contains the query parameters. Optional. String The following attribute is supported for the queryParameters sub-element:
substitution
Indicates whether the query parameters contain variable substitution. This attribute is an optional, Boolean value. If not specified, the default is false.

A value of true must be specified for the Workflows task to allow the variable substitution. If true is specified, at least one variableValue sub-element must be specified for the step.

requestBody For a PUT or POST request, this element contains the request body. Optional. String The following attribute is supported for the requestBody sub-element:
substitution
Indicates whether the request body contains variable substitution. This attribute is an optional, Boolean value. If not specified, the default is false.

A value of true must be specified for the Workflows task to allow the variable substitution. If true is specified, at least one variableValue sub-element must be specified for the step.

expectedStatusCode The expected HTTP status code from the REST API request. If this value does not match the actualStatusCode value, the workflow step fails. This behavior is similar to what happens when a job template step returns a return code that is greater than the allowed maximum return code. Required. Integer None
actualStatusCode The actual HTTP status code that is received from the REST request. To obtain this value, map it to a workflow variable. Optional Integer None
propertyMapping The property from the REST response body that is mapped to a workflow variable. You can specify multiple propertyMapping elements in a REST step. Optional String The following attributes are supported for the propertyMapping sub-element:
mapFrom
Specifies the supplied value to be mapped. This attribute is optional. If specified, the type must be nonNullString.
mapTo
Specifies the variable to which the supplied value is to be mapped. This attribute is optional. If specified, the type must be nonNullString.
End of change
Table 11. Step elements summary table: Additional sub-elements for steps that invoke another workflow (a called workflow)
Element name Description Required or optional Type Supported attributes

variableMapping

Used to transfer variable values between the called workflow and calling workflow.

Optional.

Any

No attributes are supported for this sub-element.

fromCallingToCalled

Used to transfer variable values from the calling workflow to the called workflow.

Optional.

No attributes are supported for this sub-element.

regExpression

Used for filtering on variable names. Specify a portion of the variable name with one or more wildcard characters.

Optional.

nonNullString

No attributes are supported for this sub-element.

variableName

Name of the variable.

Optional.

nonNullString

The following attribute is supported for the variableName sub-element:
mapTo
Specifies the variable to which the supplied value is to be mapped. This attribute is optional. If specified, the type must be nonNullString.

fromCalledToCalling

Used to transfer variable values from the called workflow to the calling workflow.

Optional

The following attribute is supported for the fromCalledToCalling sub-element:
override
Indicates whether the variable settings in this element are to take precedence over the variables in the calling workflow. The default is false. This attribute is optional. If specified, it must be a Boolean value.

regExpression

Used for filtering on variable names. Specify a portion of the variable name with one or more wildcard characters.

Optional.

nonNullString

No attributes are supported for this sub-element.

variableName

Name of the variable.

Optional.

 

No attributes are supported for this sub-element.

callingStepWeight

The relative difficulty of the step compared to other steps within this workflow.

The callingStepWeight sub-element is mutually exclusive with the step sub-element.

Required.

Integer value 1 - 1000.

No attributes are supported for this sub-element.

callingStepSkills

The type of skills that are required to perform this step.

The callingStepSkills sub-element is mutually exclusive with the step sub-element.

Optional.

nlsString

No attributes are supported for this sub-element.

callingStepAutoEnable

Indicates whether the step is to be performed automatically when all prerequisite steps are completed, and no user inputs are required. If callingStepAutoEnable is not specified, the default is false.

Optional.

Boolean

No attributes are supported for this sub-element.

canCallingStepMarkAsFailed

Indicates whether the step can be marked as Failed manually by the step owner.

If canCallingStepMarkAsFailed is not specified, the default is false.

When set to true, the Review Instructions page in the Step Perform wizard includes the option to allow the step owner to mark a step as Failed manually. When false, this option is not displayed to the user.

Optional.

Boolean

No attributes are supported for this sub-element.

calledWorkflowDefinitionFile

Path name of an external file that contains the workflow definition for the called workflow.

Either inlineTemplate or fileTemplate must be specified within the template sub-element.

Optional.

Path name to template file, the contents of which are treated as type velocityString.

No attributes are supported for this sub-element.

calledWorkflowDescription

A more detailed description of the step.

Required.

nlsRichString

No attributes are supported for this sub-element.

calledWorkflowID

The name of the workflow.

The combination of calledWorkflowID and calledWorkflowVersion must be unique within the Workflows task. You can use the calledWorkflowID and calledWorkflowVersion to identify a called workflow.

Optional.

String consisting of letters (uppercase or lowercase), numeric digits, the hyphen, and the underscore character. This value must begin with a letter.

No attributes are supported for this sub-element.

calledWorkflowVersion

The version of this workflow definition file. Update this value whenever you change any portion of the workflow definition file, including changes to the primary XML file or any sub-files or referenced files.

The Workflows task caches only the latest version of an imported workflow definition file. Therefore, to ensure that the most current version is used, you must update the version value whenever you modify the workflow definition. For this reason, when you create a workflow definition file, you might want to complete the development phase on a workstation before you import the workflow definition into the Workflows task.

The combination of calledWorkflowID and calledWorkflowVersion must be unique within the Workflows task. You can use the calledWorkflowID and calledWorkflowVersion to identify a called workflow.

Optional.

nonNullString

No attributes are supported for this sub-element.

calledWorkflowMD5

An MD5 encrypted value (a 128-bit hash value) that you can use to identify the called workflow.

Optional.

nonNullString

No attributes are supported for this sub-element.

Variable definition elements and types summary

Table 12. Variable definition elements summary
Element name Description Required or optional Type Supported Attributes

variable

Contains the definition of a variable. Up to 1500 variables can be defined in a workflow.

Optional.

If specified, the variable element can contain the following sub-elements:
  • label (required)
  • abstract (required)
  • description (required)
  • exposeToUser (optional)
  • category (required)
  • datastore (optional)

And, the variable element must contain at least one of the type-specific sub-elements, which are listed in Table 13.

The following attributes are supported for the variable element:
name
The name of the variable. The name is required, and must be a string consisting of letters (uppercase or lowercase), numeric digits, the hyphen, and the underscore character. This value must begin with a letter.

The combination of name and scope must be unique within the workflow.

scope
The scope of the variable. The scope is required, and the value must be instance or global. The default is instance.

The combination of name and scope must be unique within the workflow.

label

A short label for the UI widget.

Required if the variable element is specified.

nlsString

No attributes are supported for this sub-element.

abstract

A brief description of the variable for the UI widget.

Required if the variable element is specified.

nlsString

No attributes are supported for this sub-element.

description

A longer explanation of what the variable is used for, and perhaps what the syntactic requirements are.

Required if the variable element is specified.

nlsRichString

No attributes are supported for this sub-element.

exposeToUser

For a step that runs a JCL job. If included, the exposeToUser element indicates that the variable is to be included in the List variables for substitution window of the Workflows task.

This element supports both global variables and instance variables in Workflows task.

If this element is not specified, the variable is not shown in the Edit JOB statement page, and thus, cannot be selected by the user for the substitution of another value in the JOB statement.

Optional. Applicable only when the variable element is specified.

exposeToUserType

usage
Specify the purpose of the variable. This text is displayed next to the variable in the Edit JOB Statement window of the Workflows task. The usage is optional. If specified, its data type must be an nlsString.

category

The name of the logical grouping to which this variable belongs. The default is general.

Required if the variable element is specified.

nlsString

No attributes are supported for this sub-element.

datastore

Place where the variable value is stored over time. Because z/OSMF is the only supported location for variable values, it is not necessary to specify the datastore element.

Optional. Applicable only when the variable element is specified.

A single, empty, required zOSMF sub-element

No attributes are supported for this sub-element.

Table 13. Variable definition type-specific sub-elements summary
Element name Description Type Supported attributes

Boolean

Boolean type

Empty

No attributes are supported for this sub-element.

default

Default value

Boolean. The default is true.

No attributes are supported for this sub-element.

string

String type

If specified, this sub-element can contain one or more of the following sub-elements:
minLength
Minimum string length. This sub-element is optional. If specified, its value must be a non-negative integer.

If the maxLength is specified, the maxLength must be greater than the minLength. The minLength and maxLength combination mutually excludes the validationType and regularExpression sub-elements.

maxLength
Maximum string length. This sub-element is optional. If specified, its value must be a non-negative integer.

If the minLength is specified, the maxLength must be greater than the minLength. The minLength and maxLength combination mutually excludes the validationType and regularExpression sub-elements.

validationType
Validation types. This sub-element is optional. If specified, it must have one of the following values: ALPHA, ALPHAB, ALPHANUM, BIT, DSMEMBERNAME, DSNAME, DSQUAL, GROUP, HEX, IPADDR, IPADDR4, IPADDR6, TSOUSERID, UNIXID, USERID, VOLSER.

The validationType sub-element mutually excludes the minLength and maxLength combination and the regularExpression sub-element.

The UNIXID validation type verifies that a z/OS UNIX UID or GID is in the range 0 – 2147483647. Here, a UID or GID is treated as a string, not an integer. If you have code that treats a UID or GID as numeric, use an integer type to define the variable, instead of a string validation type. You can enforce the minimum and maximum values within the integer variable definition.

regularExpression
Standard regular expression that constrains the variable value. This sub-element is optional. If specified, it must have the bigNonNullString data type.

The regularExpression sub-element mutually excludes the minLength and maxLength combination and the validationType sub-element.

errorMessage
Overrides the default error message for an incorrect value. This sub-element is optional. If specified, it must have an nlsString data type.
choice
Added to the choice list. This sub-element is required if valueMustBeChoice=true.

Up to 1337 choices are allowed, and each choice must adhere to any minLength, maxLength, validationType, and regularExpression specified.

default
Widget that is primed with the value specified. This sub-element is optional. If specified, the default value must be an nlsUnboundedString that adheres to any minLength, maxLength, validationType, and regularExpression specified.

If valueMustBeChoice=true, the default value must be one of the choice values specified.

The following attributes are supported for the string sub-element:
multiLine
Specifies a single-line text box widget or a multi-line text box. This attribute is optional, and its data type is Boolean. If unspecified, its value is false (default).
valueMustBeChoice
Indicates whether the value must come from the provided choices. This attribute is optional, and its data type is Boolean. If unspecified, its value is false (default).

If set to true, at least one choice sub-element must be specified.

integer

Integer type

If specified, this sub-element can contain one or more of the following sub-elements:
minValue
Minimum value. This sub-element is optional. If specified, its value must be an integer.

If the maxValue is specified, the maxValue must be greater than or equal to the minValue.

maxValue
Maximum value. This sub-element is optional. If specified, its value must be an integer.

If the minValue is specified, the maxValue must be greater than or equal to the minValue.

default
Widget that is primed with the value specified. This sub-element is optional. If specified, the default value must be an integer that adheres to any minValue and maxValue specified.

No attributes are supported for this sub-element.

decimal

Decimal type

If specified, this sub-element can contain one or more of the following sub-elements:
minValue
Minimum value. This sub-element is optional. If specified, its value must be a decimal.

If the maxValue is specified, the maxValue must be greater than or equal to the minValue.

maxValue
Maximum value. This sub-element is optional. If specified, its value must be a decimal.

If the minValue is specified, the maxValue must be greater than or equal to the minValue.

default
Widget that is primed with the value specified. This sub-element is optional. If specified, the default value must be a decimal that adheres to any minValue and maxValue specified. Decimal places are rounded by the Workflows task, based on the decimalPlaces attribute value.
The following attribute is supported for the decimal sub-element:
decimalPlaces
Maximum number of decimal places that can be specified. The value can be an integer in the range of 1 - 6. The default is 1.

time

Time type

If specified, this sub-element can contain one or more of the following sub-elements:
minValue
Minimum value. This sub-element is optional. If specified, its value must be the time in hh:mm:ss format.

If the maxValue is specified, the maxValue must be greater than or equal to the minValue.

maxValue
Maximum value. This sub-element is optional. If specified, its value must be the time in hh:mm:ss format.

If the minValue is specified, the maxValue must be greater than or equal to the minValue.

default
Widget that is primed with the value specified. This sub-element is optional. If specified, the default value must be the time in hh:mm:ss format and must adhere to any minValue and maxValue specified.

No attributes are supported for this sub-element.

date

Date type

If specified, this sub-element can contain one or more of the following sub-elements:
minValue
Minimum value. This sub-element is optional. If specified, its value must be the date in yyyy-mm-dd format.

If the maxValue is specified, the maxValue must be greater than or equal to the minValue.

maxValue
Maximum value. This sub-element is optional. If specified, its value must be the date in yyyy-mm-dd format.

If the minValue is specified, the maxValue must be greater than or equal to the minValue.

default
Widget that is primed with the value specified. This sub-element is optional. If specified, the default value must be the date in yyyy-mm-dd format and must adhere to any minValue and maxValue specified.

No attributes are supported for this sub-element.

Start of change

password

End of change
Start of changePassword type.End of change Start of change
If specified, this sub-element can contain one or more of the following sub-elements:
minLength
Minimum string length. This sub-element is optional. If specified, its value must be a non-negative integer.

If the maxLength is specified, the maxLength must be greater than the minLength. The minLength and maxLength combination mutually excludes the regularExpression sub-element.

maxLength
Maximum string length. This sub-element is optional. If specified, its value must be a non-negative integer.

If the minLength is specified, the maxLength must be greater than the minLength. The minLength and maxLength combination mutually excludes the regularExpression sub-element.

regularExpression
Standard regular expression that constrains the variable value. This sub-element is optional. If specified, it must have the bigNonNullString data type.

The regularExpression sub-element mutually excludes the minLength and maxLength sub-elements.

errorMessage
Overrides the default error message for an incorrect value. This sub-element is optional. If specified, it must have an nlsString data type.
End of change
Start of change

No attributes are supported for this sub-element.

End of change
Start of change

atCreate element summary

Table 14. atCreate element summary
Element name Description Required or optional Type Supported Attributes

atCreate

For users of the Create Workflow REST service, the atCreate element provides additional options for working with variables. Up to 1500 atCreate elements can be defined in a workflow.

Optional.

atCreateType

The following attributes are supported for the atCreate element:
name
Specifies the variable for which the variable attributes are being set. This attribute is required.
scope
Specifies the scope of the variable. This value is set to instance (the only valid value) or is omitted; the default is instance.
required
For a workflow that is created through the Create Workflow REST service, this attribute indicates whether the variable must be set to a value at the time of workflow creation.

This attribute is optional; the default is false. If a variable is marked as "required," but the variable is not given a value, an attempt to create the workflow through the Create Workflow REST service will fail with an error.

For a workflow that is created through the Workflows task user interface, this option is ignored.

prompt
For users of the Create Workflow REST service, this attribute identifies a variable that should be prompted for by the program that issues the REST service. By itself, the prompt attribute does not enforce any behavior for the workflow creation. However, by setting prompt to true, you can indicate that prompting is recommended for the variable. The user of the Create Workflow REST service can query the value of the prompt attribute for any variables in the workflow to determine whether any variables should be prompted for.

This attribute is optional; the default is false.

End of change