[package]
name = "ontoref-ontology"
version.workspace = true
edition.workspace = true
description = "Load and query project ontology (.ontology/ NCL files) as typed Rust structs"
license.workspace = true

[features]
# Enables statically-registered node contributions via `inventory` and re-exports
# the `#[derive(OntologyNode)]` and `#[onto_validates]` macros from `ontoref-derive`.
# Off by default — zero impact on binaries that do not use derive macros.
derive = ["dep:inventory", "dep:ontoref-derive"]

[dependencies]
serde      = { version = "1", features = ["derive"] }
serde_json = { version = "1" }
anyhow     = { version = "1" }
thiserror  = { version = "2" }
tracing    = { version = "0.1" }
inventory      = { version = "0.3", optional = true }
ontoref-derive = { path = "../ontoref-derive", optional = true }

[dev-dependencies]
tempfile = { version = "3" }
