Kodexa processing is based on an event-driven model where various resources emit events. Assistants have connections to these events, and these connections are presented in a “Data Flow” representation.
Assistants receive an event and return an empty response.
The events are a list of actions the assistant wants the platform to perform.
These actions form “pipelines.”
Data Flows are owned by Projects. They combine the assistants that are part of the project and allow for the visualization of the relationship between assistants and resources. Data flows can be accessed in the UI through Manage Project/Data Flows.
The assistant is configured with connections in the data flow view in the UI. The connections have a source and type, but they also include a subscription, which allows you to determine if you want the event to go to the assistant.
Subscriptions use an Expression Language.
You can have multiple connections, and subscriptions allow you to manage how you imagine events being reacted to. Learn more about subscriptions here.
The Model Assistant is designed to allow you to specify a list of Models that you wish to be called when an event is received. It is the most common assistant you will likely work with on the platform. Models work in combination with the Model Assistant.
The sources provide examples of different types of events:
Content: when a document family has new content
Document Family: when metadata about a document family is changed
Workspace: when workspace data is saved by a user
Data Object: when extracted data is updated
Scheduled: When an assistant schedule is triggered