Modeller
Reference

Diagram projections and edit operations

Project semantic revisions into six deterministic views and translate editor gestures into typed operations.

Modeller.Projections is the reference implementation of the diagram projection contract. It projects one immutable authored revision through a versioned view definition and returns an immutable graph plus structured diagnostics.

Projection interface

DiagramProjector.Project(revision, view, layout) is the single public projection seam. Version 1 registers the behaviour map, lifecycle, causality and event-flow, context map, structural, and rule decision view kinds. The same semantic revision and view definition always produce the same topology and projection-element identities. Optional layout state never changes nodes or edges.

The first executable Child Care slices project the ACCS determination application lifecycle from Draft to Submitted through Submit application, and explain Determine ACCS eligibility through its typed Facts and Eligible conclusion.

Edit interface

ProjectionEditor.Translate(revision, request) classifies each explicit edit operation into exactly one result variant:

ResultAuthority affectedChild Care example
SemanticAuthored revisionExplicitly delete an ACCS concept
ViewView definitionRemove the application from this view
LayoutLayout stateMove the Draft stage
SessionNoneHighlight an eligibility evaluation
InvalidNoneInfer a relationship from spatial proximity

Every semantic edit carries the revision from which it was projected. A stale request returns projection.edit.stale-revision and requires reprojection. Remove from view and Delete from model are different request types; a generic visual deletion cannot silently delete semantic meaning.

See the accepted diagram projection and editing decision for the view-specific semantic contracts.

Editor protocols reach both operations through the editor-integration reference, which adds document-version conflicts and cancellation without changing projection meaning.

On this page