--- title: "Circular Reference Errors in Data Workflow" slug: "circular-reference-errors-in-data-workflow" tags: ["troubleshooting"] updated: 2026-10-09T19:06:45Z published: 2026-10-09T19:06:45Z canonical: "docs.unqork.io/circular-reference-errors-in-data-workflow" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.unqork.io/llms.txt > Use this file to discover all available pages before exploring further. # Circular Reference Errors in Data Workflow A circular reference error occurs when an operator in a [Data Workflow](/unqorkai/docs/data-workflow-component) acts on a value that does not exist yet. It can also occur when an operator references itself as an input. > [!TIP] > Describe the circular reference error to the [Build Agent](/unqorkai/docs/build-agent-reference). The agent can often identify the cause and suggest a fix based on the Data Workflow configuration. ## Removing Numerical Value Requirements in Data Workflow Inputs If an input is zero or begins with zero, do not mark it as required in the Data Workflow. When a zero-value input is set to required, a circular reference error is almost certain to occur. To fix this, change the required setting in the [Input operator](/unqorkai/docs/data-workflow-operator-reference#input) from **Yes** to **No**. ## Adding an Initializer Component with Inputs Set to Required Any required input with a zero value can trigger a circular reference error. The [Initializer component](/unqorkai/docs/initializer-component) moves those inputs out of the Data Workflow and runs them in a controlled order. This ensures values exist before the Data Workflow fires. > [!TIP] > Ask the Build Agent to walk through this configuration. Describe the circular reference error and the Data Workflow inputs involved. The agent can guide the Initializer setup for the specific module. After configuring the Initializer, click **UI View** to open Express View and access the DevTools Console while running the Data Workflow. The circular reference error should no longer display. ## Creating a Greater Than Zero Argument When numerical values are always greater than zero, add a [Gate operator](/unqorkai/docs/data-workflow-operator-reference#gate) to enforce this condition. The Gate evaluates whether the argument is greater than zero. When the condition is met, data passes through and the circular reference does not trigger. Configure the Gate operator with the following settings: | Setting | Value | | --- | --- | | Category | Gate | | Label | `_arg>0` | | Do Not Sanitize Formula | ON | | Condition | `_arg>0` | > [!NOTE] > When checked, **Do Not Sanitize Formula** tells the operator to use the formula as-is. If unchecked, the operator removes special characters that can cause unexpected behavior. Connect the output port of the operator to the input and argument ports of the **Gate** operator. If the wiring is unclear, describe the Data Workflow structure to the Build Agent and ask it to configure a Gate operator with this condition. Click **UI View** to open Express View and confirm the circular reference error no longer displays in the DevTools Console. --- **Changelog** | Date | Change | | --- | --- | | 2026-10-09 | Added inline links for Data Workflow, Build Agent, and Input operator; fixed "appear" to "display"; labeled callouts. | | 2026-07-16 | Initial publication. | Triggers activate another component when certain requirements are met. Trigger types include Concurrent, Post, and Error. Some components do not have the ability to trigger others. The UI (user interface) is a device's end-user interaction and communication point. It can include display screens, keyboards, and mouse. It is also how a user interacts with your application. Express View is how your end-user views your application. Express View also lets you preview your applications to test your configuration and view the styling. This is also the view your end-users will see when interacting with your application. After configuring a module, click Preview in the Module Builder to interact with the module in Express View. The DevTools Console helps you securely store, build, test, and deploy your software. Label Text conveys what the input component is and what information it displays. Enter the purpose of the corresponding component or field. The Unqork front-end application framework that delivers Creator-built applications to end-users. Express is the layer end-users interact with—the published forms, screens, and navigation built in the Module Builder. Express is distinct from Express View, which is a Creator-facing preview tool in the IDE. The DevTools Console helps you securely store, build, test, and deploy your software.