Data Schemas¶
Data Schemas for Flowcept data.
PROV-AGENT and Flowcept¶
PROV-AGENT is a W3C PROV extension for capturing provenance of agentic AI workflows. It is described in:
Souza et al., PROV-AGENT: Unified Provenance for Tracking AI Agent Interactions in Agentic Workflows, IEEE International Conference on e-Science, Chicago, IL, USA, 2025. https://arxiv.org/abs/2508.02866
PROV-AGENT names the main building blocks you see in modern AI systems:
Activities such as Campaign, Workflow, Task, AIModelInvocation, and AgentTool
Agents such as an AI agent or a human user
Data Objects such as domain data, prompts, responses, scheduling info, and telemetry
Relations such as used, wasGeneratedBy, wasAssociatedWith, wasAttributedTo, and wasInformedBy
The goal is to keep agent interactions, model calls, and traditional tasks in one connected provenance graph.
How Flowcept represents PROV-AGENT¶
Flowcept stores provenance according to PROV-AGENT, but keeps the storage model simple. Everything is captured with three main record types:
Workflow: high-level run context, user and environment info, and workflow-level inputs and outputs.
Task: units of work with inputs, outputs, timing, telemetry, and links to other tasks and agents.
Blob/Object: metadata and linkage for stored binary payloads, datasets, models, artifacts, and input files.
At a high level:
Activities map to the Workflow and Task records.
Agents attach to those records through simple fields, for example an agent identifier.
Data Objects live in
usedandgeneratedfor inline provenance values, or in theobjectscollection when Flowcept stores payload metadata throughBlobObject.Relations are preserved with IDs and standard fields (for example, workflow IDs, parent or dependency links), so the graph remains connected and queryable.
PROV-AGENT task subtypes¶
The subtype field on a Task record narrows it to a specific PROV-AGENT activity class.
Use the PROV_AGENT enum to set these values:
Enum value |
Stored string |
Description |
|---|---|---|
|
|
A single LLM prompt→response call (AIModelInvocation in PROV-AGENT).
Captured automatically by |
|
|
A tool execution by an AI agent (AgentTool in PROV-AGENT).
Captured automatically by the
|
The wasInformedBy relation — an AgentTool activity informing an AIModelInvocation — is
the key link for root-cause analysis and downstream impact tracing in PROV-AGENT. In Flowcept this
is expressed through the agent_id field: every task with the same agent_id belongs to the
same AI agent and can be queried together to reconstruct the full agent provenance graph.
The UI uses subtype to visually distinguish AI agent activities from regular workflow tasks.
Filter for subtype == "ai_model_invocation" or subtype == "agent_tool" to isolate agent
interactions from the provenance database.
Figure¶
PROV-AGENT overview. Dashed arrows denote subClassOf.¶