Semantic KM Creator
Turn an interface contract—REST/OpenAPI, CLI, or table/DDL—into a governed semantic layer in four
strictly sequential phases. Advance only when the current phase meets its exit condition.
Phase 1 Ingest → Phase 2 Review → Phase 3 Emit → Phase 4 Verify
ingest.md review.md emit-okf.md verify.md
emit-yaml.md
The interface is the sole source of truth. Never invent fields, grain, enums, or values. Stop on
missing evidence and ask one question at a time.
Workflow
- Ingest (
references/ingest.md) — Normalize interfaces into a complete operation inventory
and classify each operation as fact or dimension lookup with read/write status. Exit when every
operation is classified.
- Review (
references/review.md) — Decompose the model into atomic decisions. Show objective,
options, evidence, risks, dependencies, and tradeoffs, with fixed YAGNI guidance for facts,
dimensions, measures, and routing. Inject model JSON into assets/review-template.html; record
feedback in amendments.md and regenerate. Stop after the report. Exit only on approved:true
with no open or blocked decisions.
- Emit — Default to a Google OKF v0.1 bundle using
references/emit-okf.md; use repository
YAML only when explicitly requested, following references/emit-yaml.md. Both targets share
field semantics. Generate a thin root index for two or more bundles. Exit when every artifact
exists.
- Verify (
references/verify.md) — Run structural checks, semantic lint, and OKF hard
constraints when applicable. Report every pass and failure. Return non-mechanical failures to
Phase 2 with one blocking question.
Critical Rules
- Evidence only — Unsupported fields, grain, enums, or values become
TODO(verify) and an open
decision.
- Grain first — Attach no dimensions or measures before grain is fixed.
- One blocking ask — Stop only when an answer changes the model; ask one question with options.
Use the HTML review for bulk decisions.
- Layer split — Shape, routing, and grain belong to the semantic layer. Values typed into
commands or read from responses—enums, codes, paths, and commands—belong to the contract layer;
the semantic layer only points to them.
- Stable names — Do not rename confirmed fact or dimension names; OKF concept IDs derive from
paths.
- Decision gate — Every decision starts pending. Phase 2 must stop after producing the report;
Phase 3 requires
approved:true and no open or blocked item.
Load by phase: ingest.md, review.md, emit-okf.md or emit-yaml.md, then verify.md. Read
references/examples.md for an end-to-end example.
1---2name: semantic-km-creator-23description: Builds evidence-only Kimball semantic layers from REST/OpenAPI, CLI, or table/database interfaces through an HTML decision workbench, then emits Google OKF or repository YAML. Use for enterprise knowledge modeling, semantic layers, dimensional models, ontology, or OKF.4license: Apache-2.05---67# Semantic KM Creator89Turn an interface contract—REST/OpenAPI, CLI, or table/DDL—into a governed semantic layer in four10strictly sequential phases. Advance only when the current phase meets its exit condition.1112```text13Phase 1 Ingest → Phase 2 Review → Phase 3 Emit → Phase 4 Verify14 ingest.md review.md emit-okf.md verify.md15 emit-yaml.md16```1718The interface is the sole source of truth. Never invent fields, grain, enums, or values. Stop on19missing evidence and ask one question at a time.2021## Workflow22231. **Ingest** (`references/ingest.md`) — Normalize interfaces into a complete operation inventory24 and classify each operation as fact or dimension lookup with read/write status. Exit when every25 operation is classified.262. **Review** (`references/review.md`) — Decompose the model into atomic decisions. Show objective,27 options, evidence, risks, dependencies, and tradeoffs, with fixed YAGNI guidance for facts,28 dimensions, measures, and routing. Inject model JSON into `assets/review-template.html`; record29 feedback in `amendments.md` and regenerate. Stop after the report. Exit only on `approved:true`30 with no open or blocked decisions.313. **Emit** — Default to a Google OKF v0.1 bundle using `references/emit-okf.md`; use repository32 YAML only when explicitly requested, following `references/emit-yaml.md`. Both targets share33 field semantics. Generate a thin root index for two or more bundles. Exit when every artifact34 exists.354. **Verify** (`references/verify.md`) — Run structural checks, semantic lint, and OKF hard36 constraints when applicable. Report every pass and failure. Return non-mechanical failures to37 Phase 2 with one blocking question.3839## Critical Rules40411. **Evidence only** — Unsupported fields, grain, enums, or values become `TODO(verify)` and an open42 decision.432. **Grain first** — Attach no dimensions or measures before grain is fixed.443. **One blocking ask** — Stop only when an answer changes the model; ask one question with options.45 Use the HTML review for bulk decisions.464. **Layer split** — Shape, routing, and grain belong to the semantic layer. Values typed into47 commands or read from responses—enums, codes, paths, and commands—belong to the contract layer;48 the semantic layer only points to them.495. **Stable names** — Do not rename confirmed fact or dimension names; OKF concept IDs derive from50 paths.516. **Decision gate** — Every decision starts pending. Phase 2 must stop after producing the report;52 Phase 3 requires `approved:true` and no open or blocked item.5354Load by phase: `ingest.md`, `review.md`, `emit-okf.md` or `emit-yaml.md`, then `verify.md`. Read55`references/examples.md` for an end-to-end example.