OntoCore plugin model¶
Status: Design target for v0.14 (plugin host MVP) and v1.0 (stable API). Not shipped in v0.13.
The plugin system allows users and organizations to extend OntoCore and OntoCode without modifying the core project. Plugins integrate with OntoCore; they are not part of OntoCore.
Full specification: PLUGIN_SPEC.md.
Architecture¶
OntoCode (IDE)
│
▼
OntoCore (workspace engine + plugin host)
├── Ontologos (reasoning — core integration, not a plugin)
└── External plugins (owlmake, validators, exporters, …)
owlmake is the reference external workflow plugin — ROBOT/ODK-style build, QC, and release automation without becoming a core dependency.
Plugin categories (planned)¶
| Category | Purpose | Examples |
|---|---|---|
| Build | Compile, merge, materialize | Generate import modules, build release .owl |
| Release | Version and publish artifacts | OBO Foundry release bundles |
| Workflow | Multi-step pipelines | ODK release via owlmake (reference) |
| Validation / QC | Quality checks | SHACL, naming rules, OBO compliance |
| Documentation | Human-readable output | Markdown/HTML ontology docs |
| AI / MCP | Agent integration | MCP server, review assistants |
| Validator | Custom diagnostics | Required labels, deprecated imports |
| Exporter | Output formats | CSV, JSON catalogs |
| Reasoner | Native reasoner integration | Custom Rust/WASM reasoners (ADR-0014) |
| Query function | SQL extensions | descendants(iri), ontology_depth(iri) |
| UI | VS Code views | Custom inspectors (OntoCode layer) |
Built-in reasoner adapters (el, rl, rdfs, dl, auto) ship in ontocore-reasoner as thin wrappers over OntoLogos.
OntoCore vs OntoCode plugins¶
| Layer | Plugin scope |
|---|---|
| OntoCore | Build, release, workflow, validators, exporters, reasoners, query functions — run in CLI/LSP/Rust library |
| OntoCode | UI plugins — VS Code views, webview panels, workflow action surfaces |
Reference interfaces (sketch)¶
See PLUGIN_SPEC.md for BuildPlugin, WorkflowPlugin, ValidatorPlugin, and ExporterPlugin trait sketches.
Manifest (sketch)¶
[plugin]
id = "org.incato.owlmake"
name = "owlmake"
version = "0.1.0"
api_version = "1"
kind = "workflow"
entry = "libowlmake_plugin.so"
Timeline¶
- v0.14: Plugin host MVP — manifest discovery, reference validator/exporter plugins, OntoUI inspector cards
- v1.0: Stable plugin API + reference plugins; OntoCode surfaces workflow actions in IDE
See Platform roadmap and OBO & ROBOT interop.