Guide¶
Product overview¶
INTERLIS Model Composer supports a model-first workflow:
- Create or import model state.
- Edit structure and properties in UI panels.
- Validate continuously.
- Export artifacts (
.ili, markdown docs, project bundle). - Optionally validate instances (
.xtf) against the active model.
Core concepts¶
Project bundle (.imcp)¶
A project bundle captures:
- project metadata
- current model JSON
- UI state (diagram zoom, panel configuration, presets)
Use it to move work between sessions and team members.
Model state¶
The backend stores and manipulates a canonical model representation used by all APIs.
Derived artifacts¶
The following outputs are generated from model state:
- INTERLIS text (
/api/model/export/ili) - Markdown docs (
/api/docs/export/markdown) - diagnostics from model validation (
/api/model/validate)
Daily workflow¶
1. Start or import¶
- New project: create baseline structure.
- Import
.imcp: continue from previous session. - Import
.ili: parse textual INTERLIS into model state.
2. Edit model¶
Use these panels:
- Structure Tree: navigate/create topics, classes, attributes, domains, relations
- Properties Editor: update semantic details
- Diagram Editor: adjust visual layout and relation paths
3. Validate¶
Run validation frequently to catch:
- naming issues
- cardinality errors
- consistency issues
- external toolchain findings (if configured)
4. Inspect output¶
Output panel should always show the latest compiled INTERLIS model text after sync.
5. Export¶
- Export
.ilifor INTERLIS downstream workflows - Export markdown docs for governance and review
- Export
.imcpfor collaboration handoff
Collaboration endpoints¶
Available baseline endpoints:
GET /api/collab/statusGET /api/collab/git-refsPOST /api/collab/commit-draftPOST /api/collab/model-diff
These endpoints are intended to support lightweight coordination and traceability.
Suggested team process¶
- Keep
.imcpsnapshots for significant milestones. - Validate before each export.
- Attach generated docs to review tickets.
- Use commit drafts as helper text, not as authoritative changelog.
Quality gates¶
Recommended checks before merge:
cargo fmt --checkcargo clippy -D warningscargo test- smoke validation script run
Security and operations notes¶
- Keep external tool binaries managed and pinned where possible.
- Set proxy variables in restricted networks.
- Use strict mode (
*_STRICT=true) in controlled CI environments.