EKOSdocs
Docs / Knowledge Base Learn

Schema

Where the machine-readable schema lives and how to extend it.

The schema is the Rust types in ekos_kir (objects, relationships, evidence) and ekos_semantic (CkmObject), serialized as JSON; ledger payloads are that JSON.

  • ObjectKind and RelationshipKind are enums with a Custom(String) variant, serialized untagged.
  • Adding a built-in kind is an RFC-level change; adding a custom kind means registering it in ekos_kir::custom_kinds::REGISTRY.
  • Fact-engine attributes are interned in an append-only registry; ids are stable for the lifetime of a ledger and never reused.

The reference form is Knowledge Schema. A formal, versioned specification of the EKOS Knowledge Model is a stated goal for a future RFC.