Data IO (Sources & Sinks)

Overview

Data IO classes define how data flows into and out of pipelines:

  • DataSource / PayloadSource: bring data into the pipeline

  • DataSink / PayloadSink: output data from the pipeline

When wrapped as nodes in a pipeline, these classes are automatically converted to DataOperation processors with explicit parameter signatures.

Important: All IO method parameters must be explicitly declared. **kwargs is not allowed for reliable provenance tracking and parameter validation.

Public API Surface

Autodoc

class semantiva.data_io.data_io.DataSink(logger=None)[source]

Bases: _SemantivaComponent, Generic[T]

abstract classmethod input_data_type()[source]
classmethod send_data(data, *args, **kwargs)[source]
class semantiva.data_io.data_io.DataSource(logger=None)[source]

Bases: _SemantivaComponent

classmethod get_data(*args, **kwargs)[source]
abstract classmethod output_data_type()[source]
class semantiva.data_io.data_io.PayloadSink(logger=None)[source]

Bases: _SemantivaComponent, Generic[T]

abstract classmethod input_data_type()[source]
classmethod send_payload(payload, *args, **kwargs)[source]
class semantiva.data_io.data_io.PayloadSource(logger=None)[source]

Bases: _SemantivaComponent

classmethod get_payload(*args, **kwargs)[source]
classmethod injected_context_keys()[source]
abstract classmethod output_data_type()[source]