Tool4Boxology is a toolkit for designing, validating, generating, and exporting hybrid and neuro-symbolic AI system architectures using the Boxology methodology.
The recommended entry point is the Boxology-Interface web application. It
combines a React and GoJS diagram editor, Boxology and Kautz pattern validation,
knowledge-graph generation, Virtuoso integration, and an AI-assisted
natural-language-to-Boxology workflow.
- Boxology AI Assistant: describe a system in natural language and generate
a valid
.boxologyGoJSGraphLinksModel, then open it directly in the editor or download it. - Multiple LLM providers: the assistant supports OpenAI, Google Gemini, Anthropic Claude, and Hugging Face. Provider credentials are validated before a chat starts.
- Optional Boxology generation skill: the assistant can use a structured planning and generation prompt that enforces canonical components, process rules, clustering, shared artifacts, layout, and valid links.
- Expanded Kautz patterns: the palette and validators cover the six Kautz
neuro-symbolic categories, including composed patterns and specialized
co:deduce,ss:deduce,nn:deduce, andtransform:embedprocesses. - Clearer validation feedback: selection and whole-diagram checks now report elementary Boxology and Kautz results together, including invalid links, process cardinality, and missing model/evidence inputs.
- Improved component typing: newly created and edited components retain canonical root names while domain-specific meaning is represented by their label and type.
- Runtime/API fixes: frontend-to-backend routing works consistently in local and Docker development, including the AI Assistant endpoints.
- Drag-and-drop
Data,Symbol,Actor,Model,Transform,Train,Deduce, andEngineercomponents - Semantic links, stage clusters, shared artifacts, and stable component IDs
- Real-time elementary Boxology and Kautz pattern validation
- Natural-language diagram generation with the Boxology AI Assistant
- Knowledge-graph generation and RDF/Turtle export
- Virtuoso upload, browsing, and SPARQL access
- JSON, styled JSON/
.boxology, RDF/Turtle, DOT, and PNG export - Reloadable diagrams with their visual layout and styling preserved
- Optional Draw.io distribution with Boxology libraries preinstalled
| Path | Purpose |
|---|---|
Boxology-Interface/ |
Main React, TypeScript, GoJS, and FastAPI application |
Boxology-Docker/ |
Dockerized Draw.io with the Boxology plugin and libraries |
Boxology-Plugin/ |
Standalone Draw.io plugin and Boxology shape libraries |
kg_creation/ |
RML mappings, RDF generation, RDFizer integration, and SPARQL utilities |
KG/ |
Knowledge-graph assets |
Ontology/ |
Boxology ontology resources |
ElementaryPattern/ |
Reusable elementary patterns in DOT format |
NeSy-Example/ |
Neuro-symbolic system examples |
report/ |
Project documentation and development material |
- Node.js 18 or newer and npm 9 or newer
- Python 3.8 or newer
- Docker and Docker Compose for the complete local stack
From the repository root:
cd Boxology-Interface
docker compose up -d --buildThis starts:
| Service | URL |
|---|---|
| Web interface | http://localhost:5173 |
| FastAPI backend | http://localhost:8000 |
| API documentation | http://localhost:8000/docs |
| Virtuoso SPARQL endpoint | http://localhost:8890/sparql |
| Virtuoso Conductor | http://localhost:8890/conductor |
To follow the services:
docker compose logs -fTo stop them:
docker compose downStart Virtuoso:
docker run -d --name boxology_kg -p 8890:8890 kemele/virtuoso:7-stableCreate a Python environment and start the backend from
Boxology-Interface/:
python -m venv .venv
# Windows PowerShell
.\.venv\Scripts\Activate.ps1
pip install -r backend/requirements.txt
python -m uvicorn backend.main:app --host 0.0.0.0 --port 8000 --reload --reload-dir backend --reload-dir srcIn a second terminal:
cd Boxology-Interface
npm install
npm run devOpen http://localhost:5173.
- Open the web interface and select AI Assistant.
- Choose OpenAI, Google Gemini, Anthropic Claude, or Hugging Face.
- Select a model, paste the provider API key or access token, and validate it.
- Keep Boxology skill enabled to generate a structured diagram, or disable it for general chat.
- Describe the architecture. A generated
.boxologyartifact can be opened in the editor or downloaded.
The current UI exposes these model families:
| Provider | Models |
|---|---|
| OpenAI | GPT-4.1, GPT-4.1 Mini, GPT-4o Mini |
| Google Gemini | Gemini 3.5 Flash, Gemini 3.1 Flash Lite |
| Anthropic Claude | Claude Sonnet 5, Claude Opus 4.8, Claude Haiku 4.5 |
| Hugging Face | GPT-OSS 120B, GPT-OSS 120B (Fastest) |
Provider credentials are entered at runtime; no provider key is required to build or start Tool4Boxology. Availability and account access for individual models are controlled by the respective provider.
Tool4Boxology checks both elementary process rules and composed Kautz neuro-symbolic patterns.
Elementary validation includes:
- every process has an input and exactly one artifact output;
Trainoutputs aModel;Deducereceives a model plus data, a symbol, or a second model as evidence;- process nodes are not connected directly to other process nodes; and
- link endpoints and component types are compatible.
Kautz validation recognizes:
- Symbolic β Neuro
- Neuro β Symbolic
- Neuro + Symbolic
- Neuro: Symbolic β Neuro
- Neuro {Symbolic}
- Neuro [Symbolic]
Validation can be run for the current selection or the complete diagram. The KG viewer also includes a Validate Kautz action.
- Create a system manually or generate a first draft with the AI Assistant.
- Organize processes into meaningful clusters and reuse shared artifacts.
- Validate elementary and Kautz patterns.
- Export a styled
.boxologyfile for later editing. - Generate RDF/Turtle and upload the knowledge graph to Virtuoso.
- Query the architecture with SPARQL or export it as DOT or PNG.
A sample hybrid AI pipeline created with Tool4Boxology.
Validation feedback for a diagram.
Boxology-Docker provides a Draw.io image with the validation plugin, pattern
libraries, shape libraries, annotations, and sidebar previews preinstalled.
cd Boxology-Docker
docker build -t boxology-drawio .
docker run --name boxology-drawio -p 8080:8080 boxology-drawioOpen http://localhost:8080. See
Boxology-Docker/README.md for module-specific
details.
- React 19, TypeScript, Vite, Material UI
- GoJS
- FastAPI and Uvicorn
- Virtuoso and SPARQL
- Graphviz and RDF tooling
- Docker Compose
- Diagrams, documentation, and educational assets: CC BY 4.0
- Software and extended modules: Apache License 2.0
GoJS is used for diagram rendering. Check the GoJS licensing terms when deploying the editor.
If you use Tool4Boxology in your research, please cite:
Tool4Boxology: A Semantic Toolbox for Constructing and Analysing
Neuro-Symbolic Architectures
Johannes E. Bendler, Yashrajsinh Chudasama, Mahsa Forghani, Enrique Iglesias,
Disha Purohit, Jacquiline Roney, Annette ten Teije, Frank van Harmelen, and
Maria-Esther Vidal
The Semantic Web: 23rd European Semantic Web Conference (ESWC 2026),
Springer-Verlag, pp. 191β211.
https://doi.org/10.1007/978-3-032-25159-6_11
BibTeX
@inproceedings{10.1007/978-3-032-25159-6_11,
author = {Bendler, Johannes E. and Chudasama, Yashrajsinh and
Forghani, Mahsa and Iglesias, Enrique and Purohit, Disha and
Roney, Jacquiline and ten Teije, Annette and
van Harmelen, Frank and Vidal, Maria-Esther},
title = {Tool4Boxology: A Semantic Toolbox for Constructing and
Analysing Neuro-Symbolic Architectures},
booktitle = {The Semantic Web: 23rd European Semantic Web Conference,
ESWC 2026},
year = {2026},
publisher = {Springer-Verlag},
address = {Berlin, Heidelberg},
pages = {191--211},
doi = {10.1007/978-3-032-25159-6_11}
}Developed by Mahsa Forghani Tehrani
Email: mahsa.forghani.tehrani@stud.uni-hannover.de
Repository: https://github.com/SDM-TIB/Tool4Boxology


