--- id: OCX-1 family: RT-OCX level: core profiles: [runtime] posture: normative-target added: "1.0" changed: "1.0" source: https://flowdrop.io/spec/rules/rt-ocx/ocx-1 specification: FlowDrop Workflow Specification 1.0-draft licence: CC BY 4.0 --- # OCX-1 — External invocation builds flat initial data *RT-OCX (Part II) · level: core · profiles: runtime · added in 1.0* The payload has to arrive where the trigger's advertised output schema says it is. Keying it by node id put it somewhere only an expression naming that node could reach. ## The rule > **Normative.** This is the rule. > > 1. The initial data for an externally invoked run is flat: the extracted trigger data at the top level, plus the identifiers of the trigger configuration and the trigger node, the same shape every other trigger kind builds. > > 2. Since a trigger emits its whole initial data as the node's `data` output, the caller's payload is reachable at `data.payload`, which is what the trigger's declared output schema advertises. > > 3. The initial data must not be keyed by node id. ## Related rules - Names: OCX-3 - Referenced by: OCX-3, OCX-6 --- Rule identifiers are permanent and are never renumbered. This specification carries no implementation status: each implementation publishes its own standing against these rules. Licensed CC BY 4.0.