Skip to main content
Version: Current

Model Data

Overview

Model Data defines the data structure used by a workflow or agent during execution.   It represents the business data that activities read from and write to while the workflow runs.

Model Data is:

  • Defined at design time
  • Instantiated per workflow instance
  • Used for decision-making, data passing, integrations, and task inputs

You can organize Model Data hierarchically using fields, arrays, groups, and group arrays to accurately model real-world business data.

BPA Designer model data creation and usage


Key Concepts

Field

A Field represents a single value of a specific data type.

Examples:

  • CustomerName (String)
  • OrderAmount (Decimal)
  • IsApproved (Boolean)

Field[]

A Field[] represents a collection (array) of values of the same data type.

Examples:

  • OrderIds[] (Array of Integer)
  • EmailAddresses[] (Array of String)

Use Field[] when:

  • Multiple values of the same type are expected
  • The count of values is dynamic or unknown

Group

A Group is a logical container used to organize related fields.

Examples:

  • Customer   - FirstName   - LastName   - Email

Groups help:

  • Improve readability
  • Model structured objects
  • Avoid flat, unmanageable data models

Group[]

A Group[] represents an array of structured objects.

Examples:

  • OrderItems[]   - ProductId   - Quantity   - Price

Use Group[] when:

  • You need to represent repeating business entities
  • Each item has multiple related attributes

Creating Model Data

Creating a Field

To create a new field:

  1. Right-click the Fields node
  2. Select Add Field
  3. Enter a Name
  4. Select a Data Type
  5. (Optional) Enter a Description
  6. Click Add


Editing a Field

To edit an existing field:

  1. Right-click the field
  2. Select Edit
  3. Modify the required properties
  4. Click Update


Creating a Field[]

To create an array field:

  1. Right-click the Fields node
  2. Select Add Field[]
  3. Enter a Name
  4. Select the Data Type of array elements
  5. (Optional) Add a Description
  6. Click Add

The system automatically treats this field as a collection.


Editing a Field[]

To edit an existing array field:

  1. Right-click the field
  2. Select Edit
  3. Update the properties
  4. Click Update

Working with Groups

Creating a Group

To create a group:

  1. Right-click the Fields node
  2. Select Add Group
  3. Enter a Name
  4. (Optional) Add a Description
  5. Click Add


Editing a Group

To edit an existing group:

  1. Right-click the group
  2. Select Edit
  3. Update the required properties
  4. Click Update


Creating a Group[]

To create a group array:

  1. Right-click the Fields node
  2. Select Add Group[]
  3. Enter a Name
  4. (Optional) Add a Description
  5. Click Add

Use Group[] when modeling collections of structured objects, such as:

  • Line items
  • Users
  • Approvals
  • Records returned from a database

Editing a Group[]

To edit an existing group array:

  1. Right-click the group
  2. Select Edit
  3. Modify the required properties
  4. Click Update

Using Model Data in Activities

Model Data fields can be:

  • Used as inputs to activities
  • Populated as outputs from activities
  • Referenced in conditions, expressions, and mappings
  • Passed between workflows or agents as arguments

Model Data ensures type safety, clarity, and predictable execution across your workflows.


Best Practices

  • Use Groups to avoid flat data models
  • Use Field[] and Group[] for dynamic or repeating data
  • Name fields clearly to reflect business meaning
  • Add descriptions to improve maintainability
  • Avoid unnecessary nesting unless it reflects real structure

Model Data forms the foundation for reliable, scalable workflow design.