Document the compact form of a reason tag reference
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
89fd4b3
Document the two event sections and the non transition responses
The xsm language gained an ignore and a can't happen section per state block,
each response carrying an explanation, and the single events header split into
interaction events and completion events.
Rewritten:
- Events: the two headers, one block_end closing both, and the rule that an
event is a completion event only when that is its sole use. The Door's
Hold released is the worked example.
- Ignore: was documenting the bare event name in transitions as the way to
ignore. Now covers the ignore section, keeping the bare form as legacy.
- Can't Happen: was a stub plus a note deferring to the state table
spreadsheets. Now covers declaring a reason and the omission default, and
explains why the event split is what makes the default judgeable.
- Reason tags (new): the angle bracket labels, file scoping, definition
versus reference, and conventions.
Corrected along the way:
- Can't Happen claimed omission from the Events section implies can't happen.
It is omission from a state's response sections.
- Lifecycle or Assigner still quoted events* in the top level rule.
- Initial transitions showed Execute > WAITING FOR CABIN where transfer.xsm
has initial > CREATED.
- Deletion states showed a stale destination in the Delete activity.
Example links now point at the migrated models in xsm-parser/input rather
than the older copies in xuml-populate. Those resolve once docs merges to
main. References to the popsystem module itself are unchanged.
Every grammar snippet was checked line by line against state_model.peg and
every xsm example against the files in input/.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
ca7663d
Update Deletion-states.md
4cd2c8a
Update Initial-transitions.md
2f5473c
Updated _Sidebar (markdown)
d3e8d58
Updated Can't happen (markdown)
1c8c799
Updated Can't happen (markdown)
fbc14e2
refactored transitions description
7464e3a
Created Can't happen (markdown)
3b703b1
Updated sidebar and names
dbe134a
Updated the assigner description
9064c87
trimmed lifecycle description
3fe4de0
Reworded lifecycle assigner choice with links to metamodel wiki
3c8dc03
Updates to scoping descriptions
1453ee5
Updated Lifecycle vs Assigner (markdown)
70e0385
Updated Lifecycle vs Assigner (markdown)
203c50c
Updated Lifecycle vs Assigner (markdown)
81eab95
Updated Lifecycle vs Assigner (markdown)
b91ca60
Document the xsm modeling language
Builds out the wiki from state_model.peg, which stays the ground truth.
Structure follows the grammar's own sections rather than mirroring the
xcm-parser wiki, since a state model has different concerns: the
lifecycle vs assigner choice, events, initial transitions, and the state
block with its signature, activity, transitions and deletion marker.
The metadata pages are carried over from xcm-parser nearly verbatim, the
grammars being all but identical; xsm's resource_item is a single name,
so that page is adjusted accordingly.
Examples come from the Elevator Management domain in xuml-populate,
mostly door.xsm with R53.xsm for the assigner case, referenced by
absolute URL. Every grammar excerpt was checked against the .peg
verbatim and every snippet shown was run through the parser.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
51937b2