Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 1 addition & 4 deletions src/.github/standards/sysml2-modeling.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,25 +127,22 @@ Views control what gets rendered into diagrams for the design document. Use name
package {SystemName} {
view SoftwareStructureView {
expose {SystemName}; // whole package: system + subsystems + units
render asTreeDiagram;
}

view {SystemName}View {
expose {SystemName}System; // system def only, not expanded into subsystems
render asTreeDiagram;
}

view {SubsystemName}View {
expose {SubsystemName}; // one subsystem def only
render asTreeDiagram;
}
}
```

**Critical distinction** (do not confuse these — this cost significant trial-and-error to
discover): `expose <name>;` is what scopes a rendered diagram's content (the union of the
named element's containment subtree). `render <kind>;` selects a rendering *style* (e.g.
`asTreeDiagram`) — it has **no effect on scope**. `expose` is only legal inside a named
`asInterconnectionDiagram`) — it has **no effect on scope**. `expose` is only legal inside a named
`view Name { ... }` **usage**; it is a syntax/semantic error inside a `view def Name { ... }`
**definition**. `expose` targets must be `::`-qualified or locally-resolvable names, not
dotted member-access chains (`expose foo.bar;` is invalid — use `expose Bar;`).
Expand Down
Loading