Tool4Boxology is a toolkit for designing, validating, and exporting hybrid AI system architectures using the Boxology methodology.
It provides:
- A web-based interface (React + GoJS) for diagramming & validation
- Knowledge Graph (KG) generation from diagrams
- Virtuoso integration for SPARQL queries
- A Draw.io Docker image with preloaded Boxology plugin & libraries
Inspired by:
Frank van Harmelen et al., "Modular Design Patterns for Hybrid Learning and Reasoning Systems" (Web Semantics, 2023).
Start with the
Boxology-Interfaceweb app.
It's the main way to design, validate, and export Boxology diagrams and knowledge graphs.
- Visual editor (React + GoJS)
- Real-time validation of Boxology patterns
- Active KG generation + Virtuoso integration
- Multiple export formats (JSON, Styled JSON, DOT, PNG, RDF/Turtle)
The Boxology-Docker submodule (Draw.io image) is optional and provides a Draw.io instance with the Boxology plugin and libraries already installedβuseful if you prefer Draw.io or want a lightweight environment for pattern design.
| Folder / Module | Description |
|---|---|
| Boxology-Interface | Web-based visual editor (React + TypeScript + GoJS) with validation, KG generation, and Virtuoso integration. |
| Boxology-Docker | Custom Draw.io Docker image with pre-installed Boxology plugin, libraries, and sidebar images. |
| Boxology-plugin | Standalone Draw.io plugin and Boxology shape libraries for manual use in Draw.io. |
| kg_creation | Knowledge graph creation logic, RML mappings, RDFizer/SDM-RDFizer integration, and SPARQL utils. |
| ElementaryPattern | Elementary patterns in DOT format for modular visualization and reuse. |
| Report | Project documentation, notes, and development history. |
There are two main ways to use Tool4Boxology:
- Boxology-Interface (recommended) β full web editor + KG pipeline
- Boxology-Docker (Draw.io) β Draw.io with Boxology plugin preloaded
This interface is the core visual editor. It supports:
- π¦ Drag-and-drop components
- π Semantic connectors
- π― Clustering
- π Stable IDs
- π§ KG generation
- π Virtuoso integration
- πΎ JSON, Styled JSON, RDF, DOT, PNG export
- π§© Real-time validation
- Drag-and-drop Boxology components
- Semantically meaningful edges
- Containers & clustering
- Visual customization
- Real-time KG generation
- Stable component IDs
- Two JSON export types
- RDF/Turtle export
- Auto-upload RDF
- One-click SPARQL navigation
- KG browsing
- React
- TypeScript
- Vite
- GoJS
- Material-UI
- FastAPI
- Virtuoso
- Graphviz
- RDFLib
- Node.js β₯ 16
- Python β₯ 3.8
- Docker + Docker Compose (for full pipeline)
From Boxology-Interface root:
docker-compose up -dOpen: http://localhost:5173
docker run -d --name virtuoso -p 8890:8890 -p 1111:1111 -e DBA_PASSWORD=dba -e SPARQL_UPDATE=true -v virtuoso_data:/opt/virtuoso-opensource/database openlink/virtuoso-opensource-7:latest
cd Boxology-Interface
cd backend
uvicorn main:app --reload --host 0.0.0.0 --port 8000cd Boxology-Interface
npm install
npm run devOpen: http://localhost:5173
Open the GoJS-based visual editor from the Boxology-interface folder. Instructions are included in its README.
Boxology-Interface
βββ src/
β βββ components/
β βββ utils/
β βββ pages/
β βββ hooks/
β βββ styles/
β βββ main.tsx
βββ backend/
β βββ kg_generator/
βββ public/
βββ vite.config.ts
βββ tsconfig.json
- Build architecture
- Cluster components
- Validate
- Generate KG
- Export JSON/RDF
- Upload to Virtuoso
- Run SPARQL queries
- Export DOT/PNG
A sample hybrid AI pipeline using Tool4Boxology.
β Check for validation!
The Boxology-Docker module provides a Draw.io image extended from fjudith/drawio with:
- Pre-installed Boxology plugin
- Pre-loaded Boxology shape libraries
- Sidebar images
- No manual upload required
cd Tool4Boxology/Boxology-Docker
docker build -t boxology-drawio .
docker run -p 8080:8080 boxology-drawioOpen:
π http://localhost:8080
docker-compose up- BoxologyValidation.js plugin
- PatternLib.xml
- ShapeLib.xml
- AnnotationLib.xml
- Sidebar preview icons
- Custom entrypoint script
| Path | Description |
|---|---|
| Dockerfile | Builds Boxology-enabled Draw.io |
| docker-entrypoint.sh | Configures and runs Tomcat/Draw.io |
| js/plugins/ | Plugin logic |
| lib/ | XML libraries |
| images/ | Sidebar icons |
- Harmelen et al., Web Semantics 2023
-CC BY 4.0 β diagrams, documentation, educational assets
-Apache 2.0 β included third-party or extended modules
Mahsa Forghani Tehrani
Leibniz University Hannover
π§ [email protected]


