Semantiva
Overview
Semantiva is an open-source, Python-based framework that unifies Domain-Driven Design, Type-Oriented Development, and semantic transparency to streamline data operations. It offers a structured way to define and process domain-specific data types and algorithms, ensuring clarity, consistency, and adaptability even in complex scenarios.
Semantiva enforces type-safe relationships between data and algorithms and uses a dual-channel pipeline model where payload and context flow together. This enables dynamic parameter injection, traceable execution, and high reusability across workflows.
Install
pip install semantiva
Getting Started
Quickstart — Hello pipeline (YAML only)
Create hello.yaml:
extensions: ["semantiva-examples"]
pipeline:
nodes:
- processor: FloatValueDataSource
parameters:
value: 1.0
- processor: FloatAddOperation
parameters:
addend: 2.0
- processor: FloatMultiplyOperation
parameters:
factor: 10.0
- processor: FloatCollectValueProbe
context_key: "result"
- processor: template:"result_{result}.txt":path
- processor: FloatTxtFileSaver
Run it:
semantiva run hello.yaml
This writes the computed result to the output file defined dynamically by the context.
For the complete guide, visit https://api.semantiva.org
Why Semantiva?
Semantiva is a semantic framework for reproducible, contract-validated workflows:
- Pipelines compile into deterministic graphs with stable semantic/configuration IDs.
- Components are validated through a contract catalog.
- Payload and context travel together to enable dynamic behavior and rich introspection.
- Supports parametric sweeps, context-driven adaptation, and pluggable execution backends.
Key Principles
- Domain-Driven Design (DDD)
- Type-Oriented Development
- Semantic Transparency & AI-Readiness
Features
- Semantic components with machine-readable metadata
- Deterministic graph identity (semantic + configuration)
- Contract-validated processors
- Typed payloads and structured context
- Parametric sweeps defined in YAML
- Modular, extensible execution layer
- Optional tracing with deterministic IDs
- HPC- and AI-ready architecture
Benefits
- Clarity & consistency across pipelines
- Adaptive workflows that evolve with domain needs
- Scalable to HPC environments
- AI-driven collaboration possible due to explicit semantics
- Interdisciplinary communication through shared data/operation types
- Dynamic parameter injection via the context stream
Core Components
- Data Operations — type-safe payload transformations
- Context Processors — metadata and runtime parameter management
- Pipelines — orchestrated execution of operations
- Data Types & Processor Types — explicit semantic structures
- Execution Tools — CLI, tracing, inspection utilities
Pipeline Configuration & Node Factories
Pipelines are defined declaratively in YAML. Node factories:
- Instantiate processors
- Wire payload + context flows
- Resolve parameters
- Compute stable identities
This separation of configuration and implementation supports reproducibility and controlled evolution of workflows.
License
Semantiva is released under the Apache License 2.0.
Acknowledgments
Semantiva draws inspiration from the transparency and traceability requirements of large-scale scientific computing systems, notably the ALICE O² project at CERN. Lessons from managing high-throughput, HPC-oriented workflows in that environment helped shape Semantiva’s focus on typed workflows, semantic clarity, provenance, and robust execution architecture.
Metadata
Release files for semantiva 0.5.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| semantiva-0.5.0.tar.gz | 248.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| semantiva-0.5.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 477.9 kB
Release files / semantiva-0.5.0.tar.gz
| Download URL | semantiva-0.5.0.tar.gz |
|---|---|
| Size | 248.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
49c28d9bd4fb55541176e81f4415bcda0a739cdebb51d04a21e959d85a4b9540
|
|
BLAKE2b-256 checksum How to use checksums |
ed5eea95565dbfe45cfc02e8e9e25c408f73fc398049b1ccc469e4764cd2a14e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
pdm/2.26.1 CPython/3.10.12 Linux/6.11.0-1018-azure
|
Release files / semantiva-0.5.0-py3-none-any.whl
| Download URL | semantiva-0.5.0-py3-none-any.whl |
|---|---|
| Size | 229.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a2b83a055c19d7a1e8d3a7caf21886cd7218d2f951ac29261b1d7a4ebd3c6b77
|
|
BLAKE2b-256 checksum How to use checksums |
a9572a238e7847ac2112c9d35331cf555a84876e37e83539b58ed4536e6075e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
pdm/2.26.1 CPython/3.10.12 Linux/6.11.0-1018-azure
|