ParameterDescription is a field attribute that is used to declare C# fields in the task's input parameter or result classes as being part of the task contract.
It provides several optional properties.

A short explanatory text that describes the parameter's purpose.

A list of examples that should help the user who models a BPMN workflow to e.g. specify valid input formats or ranges of the parameter, or business cases in which the parameter is useful.
It is recommended to keep the list and its entries short but meaningful.

Indicates that the parameter should be optional according to section Optional parameter. For generic types this property can be omitted if a Nullable<T> variable declaration is used.
It is only used for task input parameters and will be ignored for task result parameters.
A default value in case the parameter is marked as optional. The value must be specified as a string.
If omitted, the default value of the declared parameter type is used.
It will be ignored for mandatory parameters and task result parameters.

No type conversion check

There is currently no check if the specified default value can be converted into the defined parameter type, so take care what you specify here.

The type of a parameter might be too unspecific for a comfortable user input in the Workflow Designer or a dedicated search in the VidiFlow Monitor.
Therefore, VidiFlow provides sub-types that allow the Workflow Designer to use dedicated controls like drop-down lists or formatted input controls.
Currently VidiFlow supports

  • None: default value if no sub-type is specified

  • Storage: a drop-down list with all available storages is shown

  • ShapeTag: a drop-down list with all available shape tags is shown

  • UserGroup: a drop-down list with all available user groups is shown

  • AssetRights: a drop-down list with all available asset rights is shown

  • TimeCode: a formatted input control for timecodes is shown

These sub-types only apply for the C# parameter type string and will be ignored for all other types.
Another sub-type called

  • PlatformUri

is introduced to "mark" specific task input or result variables which contain a PlatformUri. If marked these variables will be treated specifically during workflow execution and will be searchable in the VidiFlow monitor. This sub-type can only be used for C# parameter types

  • string (will only be effective if the string actually contains a Platform URI)

  • FileReference

  • StorageReference

  • ItemReference

For future use.