Skip to main content

haystack_core/ontology/
mod.rs

1// Haystack 4 ontology layer -- defs, taxonomy, conjuncts, and validation.
2
3pub mod conjunct;
4pub mod def;
5pub mod lib;
6pub mod namespace;
7pub mod taxonomy;
8pub mod trio_loader;
9pub mod validation;
10
11pub use conjunct::ConjunctIndex;
12pub use def::{Def, DefKind};
13pub use lib::Lib;
14pub use namespace::{DefNamespace, LibSource};
15pub use taxonomy::TaxonomyTree;
16pub use trio_loader::load_trio;
17pub use validation::{FitIssue, ValidationIssue};
18
19use crate::codecs::CodecError;
20
21/// Errors that can occur during ontology loading or processing.
22#[derive(Debug, thiserror::Error)]
23pub enum OntologyError {
24    /// Error from the Trio/Zinc codec during parsing.
25    #[error("codec error: {0}")]
26    Codec(#[from] CodecError),
27    /// Invalid def record.
28    #[error("invalid def: {0}")]
29    InvalidDef(String),
30    /// General load error.
31    #[error("load error: {0}")]
32    Load(String),
33}