Skip to content
🚧 Early alpha — building the foundation. See the roadmap →

Ontology lifecycle

Updated

Crosswalker supports ontology lifecycle management through six recurring capabilities: Acquire, Shape, Connect, Understand, Share, and Maintain. They are not a one-way pipeline or six artifact classes. A team can revisit any capability whenever sources, questions, mappings, release needs, or upstream versions change.

The lifecycle operates through linked artifacts with distinct roles and authority: governing Schema Contracts, extensional Knowledge Sets, and intensional Recipes. Execution Records and Package Manifests remain later, separate administrative envelopes.

CapabilityCore questionCurrent state
AcquireWhat source material are we bringing under management?Largely implemented for local acquisition; CSV is strongest, with XLSX and JSON support shipped and JSONL still open.
ShapeHow should source structure be embodied as canonical Markdown?Largely implemented through the wizard, ImportRecipe grammar, render(), enrichment, validation, and generation.
ConnectWhat semantic relationships should be asserted?Partial; hierarchy, generated links, crosswalk-edge records, and evidence-link foundations exist, while full authoring workflows remain incomplete.
UnderstandWhat questions and navigational views should the knowledge answer?Partial; Bases live views, custom pivot, Tier 2 queries, and generated navigation exist, with broader view/report coverage still developing.
ShareWhat should leave the vault, in what representation, with what portability?In progress; first exporter and portable ImportRecipe fidelity slices are implemented, while packaging and full recipe-library UX remain open.
MaintainHow do authority, mappings, and local work survive change?Planned; research and primitives exist, but end-to-end update, diff, migration, and revalidation workflows are not yet shipped.

What: obtain structured source material and establish enough identity, version, and provenance to work with it safely.

Current: local file acquisition through the import wizard is established for CSV, XLSX, and JSON, with CSV as the strongest path. Acquisition is broader than selecting bytes: it should eventually identify the upstream publisher, source version, hash, license, and expected compatibility.

ConcernTodayDirection
Local filesCSV, XLSX sheet/header selection, and JSON record/iterator selectionAdd JSONL and continue hardening large-source readers
Source recognitionHeaders, fingerprints, bundled-recipe matchingPublisher/version-aware recognition and source verification
Remote/community inputsManual download or local handoffURL acquisition and curated registries without weakening provenance
AuthoritySource reference and hashes captured during importExplicit upstream authority distinct from local Tier 1 authority

Acquired files are upstream inputs, not automatically Knowledge Sets or Packages. A file becomes a governed package member only when a future Package Manifest deliberately resolves it.


The retained #import anchor points here because import is now understood as the central write-side part of Shape, not the whole lifecycle.

What: decode source shape, normalize values, and re-embody concepts and assertions in Obsidian-native primitives.

structured source + ImportRecipe
        ↓ decode / normalize / map / render
canonical Tier 1 representation of Knowledge Sets
PieceRole
Tier 1 Schema ContractGoverns valid Tier 1 record representations.
ImportRecipeIntensional Recipe subtype governing deterministic source-to-Tier-1 behavior.
Import wizard / headless harnessTwo interfaces over the same Recipe-driven generation path.
render()Pure coupling point from Recipe + concept identity to address and content regions.
Tier 1Canonical Crosswalker-managed representation/authority tier for local Knowledge Sets.

Shape includes parsing, bounded transforms, hierarchy recovery, target-primitive selection, body/frontmatter emission, enrichment, pre-write validation, and re-import-safe merge behavior. The current implementation is largely complete for the v0.1 recipe grammar; format breadth and durable user Recipe storage remain active work.


The retained #enrich anchor points here because enrichment is one way of connecting knowledge, alongside hierarchy, crosswalks, evidence, and other typed relations.

What: create or import semantic assertions among concepts, evidence, systems, observations, and other entities.

Relationship levelPrecise artifact termExample
Governed collectionMappingSetA released NIST-to-ISO mapping collection with identity, version, provenance, and license
Member assertionMappingAssertionnist:AC-2 subset-of iso:A.5.16 with confidence and justification
Source-to-vault editingImportMappingWorkbench state mapping source fields into Recipe-owned layout/frontmatter/body regions
Evidence relationJunction/evidence assertionA policy note implements a control with status, review date, and evidence metadata

A MappingSet is an extensional Knowledge Set; an ImportRecipe is intensional policy. Keeping them separate prevents crosswalk content from being mistaken for instructions about how to generate it.

Current: generated hierarchy and navigation links, crosswalk-edge records, STRM/SSSOM semantics, and junction-note foundations exist. Authoring, review, MappingSet identity/membership, and full evidence workflows remain partial.


What: project canonical knowledge for a question, then present the answer in a useful shape.

MechanismResultAuthority/freshness
Obsidian BasesLive view over current Tier 1 propertiesRe-evaluated from current vault data; not a materialized result
Tier 2 SQL helpersQualified Tier 1 → Tier 2 projection used for joins and traversalDerived and deletable; rebuildable from Tier 1
Custom views / query processorsInteractive renditionDerived from current data; renderer-dependent
Materialized snapshotPersisted point-in-time query resultReproducible but potentially stale; useful for publish/audit/comparison

Crosswalker uses projection only with a qualifier: field projection, read/view projection, Tier 1 → Tier 2 projection, or editable UI projection. The wider product action is understanding structured knowledge, not turning every output into a new authoritative artifact.

Current: Bases live views, the custom pivot surface, Tier 2 query helpers, and generated hubs/navigation are available or partially available. Multi-shape reporting, richer traversal UI, and snapshot workflows remain incomplete.


What: export, publish, report, or distribute selected knowledge and reusable policy without collapsing content, instructions, and packaging into one object.

Shared thingSemantic rolePossible representation/carrier
Ontology or MappingSetExtensional Knowledge SetTier 1 Markdown, STRM/OLIR TSV, SSSOM TSV, OSCAL JSON
ImportRecipeIntensional Recipe specificationCanonical JSON
Live view definitionRecipe/query policy or binding.base file or query declaration
Point-in-time reportMaterialized snapshotMarkdown, JSON, PDF, or another export format
Resolved releaseFuture Package described by a Package ManifestZip, directory, or git repository as the physical carrier

A Package has semantic resolution, integrity, dependency, license, and installation meaning. A zip, folder, or repository is only a carrier unless a manifest gives the collection package semantics.

Current: Share is in progress. Exporters and canonical ImportRecipe fidelity have landed in v0.1.7; durable Recipe library UX, broader round-trip proofs, package semantics, and signed distribution remain later work.


What: preserve usable authority as upstream sources, local knowledge, mappings, schemas, and Recipes change.

Maintenance concernWhat must remain distinct
Upstream changePublisher authority and source versions
Local regenerationCanonical Tier 1 managed authority plus managed / user_preserve ownership
Mapping reviewMappingSet identity, assertion membership, provenance, and publication state
Recipe evolutionRecipe specification version, compatibility, ancestry, and bindings
Runtime historyFuture Execution Record rather than mutable Recipe fields
Distribution updateFuture Package Manifest rather than assumptions based on a carrier filename

Maintain includes diffing, stale-link detection, migration, revalidation, re-import, conflict handling, and release continuity. Research exists for ontology evolution, diff primitives, and consistency, but the integrated capability remains planned.

Maintain can send work back anywhere: changed source material returns to Acquire; changed structure to Shape; invalidated mappings to Connect; changed questions to Understand; and a new release to Share.


Linked artifacts cooperate across the lifecycle

Section titled “Linked artifacts cooperate across the lifecycle”

No single config governs the whole lifecycle. Different artifacts cooperate through explicit relations while retaining separate authority.

RelationshipMeaningLifecycle examples
Schema Contract governs representationDefines what validatesTier 1 Schema governs Tier 1 records; Recipe Schema governs ImportRecipe
Recipe describes intended behaviorStates what should be doneImportRecipe drives Shape; query policy drives an Understand view
Recipe binding selects concrete inputs/parametersMakes reusable policy applicableSource identity + chosen Recipe + parameters
Execution applies a bound RecipePerforms workImport run, query run, export run
Execution Record records outcomeFuture separate receiptVerified inputs, warnings, outputs, validation results
Tier 1 represents Knowledge Sets canonicallyHolds authoritative local managed knowledgeConcepts, MappingAssertions, and evidence assertions
Qualified projection derives a renditionSelects or reshapes authority for a purposeTier 1 → Tier 2, live view, materialized snapshot
Package Manifest resolves a releaseFuture distribution envelopeSelected Knowledge Sets, Recipes, dependencies, hashes, licenses

This separation keeps the schema-as-primitive architecture intact: Schema Contracts govern, Knowledge Sets assert, Recipes intend, executions happen, records report, and packages distribute.