Skip to main content

mif_core/
lib.rs

1//! Shared foundational types for the MIF (Modeled Information Format) ecosystem.
2//!
3//! `mif-core` provides the types shared across the ecosystem's other crates:
4//! [`OntologyReference`], [`EntityReference`], [`EntityData`], and
5//! [`ConceptType`], plus the concept-URN helpers ([`concept_urn`],
6//! [`is_concept_urn`]) for the `urn:mif:<uuid>` id form MIF 1.4.0 requires. Field definitions are taken directly from the canonical
7//! MIF JSON Schema (`mif.schema.json`, `entity-reference.schema.json`,
8//! draft 2020-12; see <https://mif-spec.dev/schema/>).
9//!
10//! Validation of MIF documents against the schema itself lives in the
11//! `mif-schema` crate; `mif-core` only defines the shared data shapes.
12
13mod concept;
14mod entity;
15mod ontology;
16mod urn;
17
18pub use concept::ConceptType;
19pub use entity::{EntityData, EntityId, EntityReference, EntityType, KnownEntityType};
20pub use ontology::OntologyReference;
21pub use urn::{CONCEPT_URN_PREFIX, concept_urn, concept_uuid, is_concept_urn, mif_namespace};