Skip to content
sysml-rs is pre-alpha: a partial SysML v2 implementation with no OMG conformance claim. Interfaces change without deprecation while the version stays 0.x.

Language capability matrix

sysml-rs implementationExperimental / partial supportstatus: pre-alpha

This matrix aggregates the language pack — one card per language concept, each carrying evidence-gated support statements for the pipeline stages parse, lower, resolve, elaborate, validate, execute, format, lsp. A stage is validated only when a purpose-built fixture proves it; everything else is reported as unknown, never assumed. Absence of a “validated” mark is absence of evidence, not necessarily absence of support.

Measured from the language pack shipped in the pinned Book checkout (Book pin e243806), pack generator version 1, built against OMG spec drop 2025-04 / metamodel drop 20250201.

327 concept cards; 138 have at least one validated stage.

Stage Cards validated
parse 138
lower 138
resolve 101
elaborate 0
validate 8
execute 0
format 0
lsp 0

A concept card can belong to more than one category, so category counts overlap. Evidence kinds refer to the pack’s committed example fixtures.

Validated-stage counts: parse 29 · lower 29 · resolve 19 · elaborate 0 · validate 2 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
Behavior KerML parse lower resolve positive + negative fixtures
Function KerML parse lower resolve positive + negative fixtures
Interaction KerML parse lower resolve positive + negative fixtures
Invariant KerML parse lower positive + negative fixtures
Predicate KerML parse lower resolve positive + negative fixtures
Calc Result Is Expression Value KerML none
Clock Timeflow Constraint KerML none
Durationof End Minus Start KerML none
Happens Just Before No Intervening KerML none
Invocation Binds Arguments To Input Params KerML none
Local Clock Defaults To Universal Clock KerML none
Occurrence Has Lifetime Extent KerML none
Timeof Continuity Constraint KerML none
Timeof Ordering Constraint KerML none
Accept Action SysML parse lower positive + negative fixtures
Action Definition SysML parse lower resolve positive + negative fixtures
Action Usage SysML parse lower resolve positive + negative fixtures
Assignment Action SysML parse lower positive + negative fixtures
Calculation Definition SysML parse lower resolve positive + negative fixtures
Calculation Usage SysML parse lower resolve positive + negative fixtures
Decision Node SysML parse lower resolve positive + negative fixtures
Exhibit State Usage SysML parse lower resolve positive + negative fixtures
For Loop Action SysML parse lower resolve positive + negative fixtures
Fork Node SysML parse lower resolve positive + negative fixtures
Join Node SysML parse lower resolve positive + negative fixtures
Merge Node SysML parse lower resolve positive + negative fixtures
Message SysML parse lower resolve positive + negative fixtures
Message Event SysML parse lower resolve positive + negative fixtures
Perform Action SysML parse lower resolve positive + negative fixtures
Send Action SysML parse lower resolve positive + negative fixtures
State Action Usage SysML parse lower validate positive + negative fixtures
State Definition SysML parse lower resolve positive + negative fixtures
State Usage SysML parse lower validate positive + negative fixtures
Succession SysML parse lower positive + negative fixtures
Succession Flow Usage SysML parse lower positive + negative fixtures
Terminate Node SysML parse lower positive + negative fixtures
Transition Usage SysML parse lower positive + negative fixtures
While Loop Action SysML parse lower positive + negative fixtures
Calc Always Has Result Parameter SysML none
Decision Node Exactly One Outgoing SysML none
For Loop Iterates Over Sequence SysML none
Fork Node Concurrent Fanout SysML none
If Action Evaluates Test Then Branch SysML none
Interpolate Returns Null Out Of Bounds SysML none
Join Node Synchronize All Incoming SysML none
Merge Node Any One Incoming SysML none
Mref Dimension Must Match Attribute SysML none
Quantity Arithmetic Dimension Rules SysML none
Sampled Function Must Be Monotonic SysML none
Send Action Initiates Message Transfer SysML none
While Loop Iterates While Test SysML none

Validated-stage counts: parse 11 · lower 11 · resolve 10 · elaborate 0 · validate 0 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
Analysis Case SysML parse lower resolve positive + negative fixtures
Analysis Case Definition SysML parse lower resolve positive + negative fixtures
Case Definition SysML parse lower resolve positive + negative fixtures
Case Usage SysML parse lower resolve positive + negative fixtures
Include Use Case SysML parse lower resolve positive + negative fixtures
Objective SysML parse lower positive + negative fixtures
Requirement Verification SysML parse lower resolve positive + negative fixtures
Use Case Definition SysML parse lower resolve positive + negative fixtures
Use Case Usage SysML parse lower resolve positive + negative fixtures
Verification Case SysML parse lower resolve positive + negative fixtures
Verification Case Definition SysML parse lower resolve positive + negative fixtures
Analysis Case Objective Bound To Result SysML none
Case Has Subject And Objective SysML none
Verdict Criteria Modeled Explicitly SysML none
Verdict Semantics SysML none

Validated-stage counts: parse 12 · lower 12 · resolve 11 · elaborate 0 · validate 3 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
Interaction KerML parse lower resolve positive + negative fixtures
Association KerML parse lower resolve positive + negative fixtures
Association Structure KerML parse lower resolve positive + negative fixtures
Binding Connector KerML parse lower resolve positive + negative fixtures
Connector KerML parse lower resolve positive + negative fixtures
Connection Definition SysML parse lower resolve positive + negative fixtures
Connection Usage SysML parse lower validate positive + negative fixtures
Flow Connection SysML parse lower resolve validate positive + negative fixtures
Interface Definition SysML parse lower resolve positive + negative fixtures
Interface Usage SysML parse lower resolve validate positive + negative fixtures
Port Definition SysML parse lower resolve positive + negative fixtures
Port Usage SysML parse lower resolve positive + negative fixtures
Port Usage Referential SysML none

Validated-stage counts: parse 15 · lower 15 · resolve 7 · elaborate 0 · validate 0 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
Function KerML parse lower resolve positive + negative fixtures
Predicate KerML parse lower resolve positive + negative fixtures
Additive Operator Expressions none
And Operator Expressions none
Cast Operator Expressions none
ClassificationTest Operator Expressions none
ConditionalAnd Operator Expressions none
Conditional Operator Expressions none
ConditionalOr Operator Expressions none
Constructor Expression Expressions parse lower positive + negative fixtures
Equality Operator Expressions none
Exponentiation Operator Expressions none
Feature Reference Expression Expressions parse lower resolve positive + negative fixtures
Feature Value KerML parse lower resolve positive + negative fixtures
Implies Operator Expressions none
Invocation Expression Expressions parse lower resolve positive + negative fixtures
Boolean Literal Expressions parse lower positive + negative fixtures
Infinity Literal Expressions parse lower positive + negative fixtures
Integer Literal Expressions parse lower positive + negative fixtures
Real Literal Expressions parse lower positive + negative fixtures
String Literal Expressions parse lower positive + negative fixtures
MetaCast Operator Expressions none
MetaClassificationTest Operator Expressions none
Metadata Access Expression Expressions parse lower positive + negative fixtures
Multiplicative Operator Expressions none
NullCoalescing Operator Expressions none
Null Expression Expressions parse lower positive + negative fixtures
Or Operator Expressions none
Relational Operator Expressions none
Unary Operator Expressions none
Xor Operator Expressions none
Constraint Result Boolean KerML none
Core Operator Semantics KerML none
Feature Ref Resolves To Bound Value KerML none
Unbound Feature Yields Inconclusive Not False KerML none
Calculation Definition SysML parse lower resolve positive + negative fixtures
Calculation Usage SysML parse lower resolve positive + negative fixtures
Assert Constraint Must Be True SysML none
Constraint Satisfied Iff True SysML none
Constraint Usage Discovered SysML none
Negated Assert Must Be False SysML none

Validated-stage counts: parse 0 · lower 0 · resolve 0 · elaborate 0 · validate 0 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
constructor expression does not lower to a distinct kind Tooling none 1
if / terminate action nodes do not lower to distinct node kinds Tooling none 1
enum members do not lower to a distinct EnumerationUsage Tooling none 1
message / message-event do not lower to distinct kinds Tooling none 1
individual / portion occurrence prefixes do not lower to distinct kinds Tooling none 1
prefixed individual|variation <kind> def and ref <keyword-usage> forms misparse Tooling none 1
membership-wrapped role usages under-resolve their type refs nondeterministically Tooling none 1
state effect / state action / trigger subactions do not lower to distinct kinds Tooling none 1
TextualRepresentation lowers to a generic ReferenceUsage Tooling none 1
type-relationship operators do not materialize a distinct relationship kind Tooling none 1

Validated-stage counts: parse 0 · lower 0 · resolve 0 · elaborate 0 · validate 0 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
Boolean Evaluation KerML none
FlowTransfer KerML none
HappensBefore KerML none
HappensDuring KerML none
head (Sequence Function) KerML none
includes (Sequence Function) KerML none
isEmpty (Sequence Function) KerML none
last (Sequence Function) KerML none
MessageTransfer KerML none
notEmpty (Sequence Function) KerML none
Occurrence KerML none
max (Scalar Function) KerML none
min (Scalar Function) KerML none
size (Sequence Function) KerML none
State Performance KerML none
tail (Sequence Function) KerML none
Transfer KerML none
Analysis Case (Library Definition) SysML none
Calculation (Library Definition) SysML none
Case (Library Definition) SysML none
Constraint Check SysML none
DurationValue (ISQ Base Quantity) SysML none
kilogram (SI Unit) SysML none
LengthValue (ISQ Base Quantity) SysML none
MassValue (ISQ Base Quantity) SysML none
metre (SI Unit) SysML none
Pass If SysML none
Requirement Check SysML none
second (SI Unit) SysML none
State Action (Library Definition) SysML none
Verdict Kind SysML none
Verification Case (Library Definition) SysML none
Verification Method Kind SysML none

Validated-stage counts: parse 6 · lower 6 · resolve 3 · elaborate 0 · validate 0 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
Comment KerML parse lower positive + negative fixtures
Documentation KerML parse lower positive + negative fixtures
Textual Representation KerML parse lower positive + negative fixtures
Metaclass KerML parse lower resolve positive + negative fixtures
Metadata Definition SysML parse lower resolve positive + negative fixtures
Metadata Usage SysML parse lower resolve positive + negative fixtures

Validated-stage counts: parse 13 · lower 13 · resolve 10 · elaborate 0 · validate 1 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
Actor SysML parse lower resolve positive + negative fixtures
Assert Constraint SysML parse lower positive + negative fixtures
Concern Definition SysML parse lower resolve positive + negative fixtures
Concern Usage SysML parse lower resolve positive + negative fixtures
Constraint Definition SysML parse lower resolve positive + negative fixtures
Constraint Usage SysML parse lower resolve positive + negative fixtures
Framed Concern SysML parse lower resolve positive + negative fixtures
Requirement Constraint (assume / require) SysML parse lower positive + negative fixtures
Requirement Definition SysML parse lower validate positive + negative fixtures
Requirement Usage SysML parse lower resolve positive + negative fixtures
Requirement Satisfaction SysML parse lower resolve positive + negative fixtures
Stakeholder SysML parse lower resolve positive + negative fixtures
Subject SysML parse lower resolve positive + negative fixtures
Negated Satisfy Requires Not Satisfied SysML none
Requirement Check Result Is Boolean SysML none
Requirement Is Constraint Satisfied Iff True SysML none
Requirement Result Is Assumption Implies Required SysML none
Requirement Subject Must Be First Parameter SysML none

Validated-stage counts: parse 3 · lower 3 · resolve 1 · elaborate 0 · validate 1 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
At Most One Transition Fires Per Trigger KerML none
State Definition SysML parse lower resolve positive + negative fixtures
State Usage SysML parse lower validate positive + negative fixtures
Transition Usage SysML parse lower positive + negative fixtures
At Most One Each Subaction Kind SysML none
Entry Do Exit Ordering SysML none
Initial State Via Entry Succession SysML none
No Transition On Unmatched Event SysML none
Transition Firing Order Exit Effect Entry SysML none
Transition Guard Boolean SysML none
Transition Selection SysML none

Validated-stage counts: parse 61 · lower 61 · resolve 51 · elaborate 0 · validate 5 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
Association KerML parse lower resolve positive + negative fixtures
Association Structure KerML parse lower resolve positive + negative fixtures
Binding Connector KerML parse lower resolve positive + negative fixtures
Class KerML parse lower resolve positive + negative fixtures
Classifier KerML parse lower resolve positive + negative fixtures
Classifier Conjugation KerML parse lower resolve positive + negative fixtures
Conjugation KerML parse lower resolve positive + negative fixtures
Connector KerML parse lower resolve positive + negative fixtures
Data Type KerML parse lower resolve positive + negative fixtures
Differencing KerML parse lower resolve positive + negative fixtures
Disjoining KerML parse lower resolve positive + negative fixtures
EndFeatureMembership KerML none
Feature Conjugation KerML parse lower resolve positive + negative fixtures
Feature Inverting KerML parse lower resolve positive + negative fixtures
FeatureMembership KerML none
Feature Typing KerML parse lower resolve positive + negative fixtures
Filter Package KerML parse lower resolve positive + negative fixtures
Import KerML parse lower resolve positive + negative fixtures
Intersecting KerML parse lower resolve positive + negative fixtures
Library Package KerML parse lower positive + negative fixtures
Membership KerML none
Membership Import KerML parse lower positive + negative fixtures
Metaclass KerML parse lower resolve positive + negative fixtures
Multiplicity KerML parse lower positive + negative fixtures
Namespace KerML parse lower validate positive + negative fixtures
Namespace Import KerML parse lower positive + negative fixtures
OwningMembership KerML none
Package KerML parse lower validate positive + negative fixtures
Redefinition KerML parse lower resolve positive + negative fixtures
Specialization KerML parse lower resolve positive + negative fixtures
Structure KerML parse lower resolve positive + negative fixtures
Subsetting KerML parse lower resolve positive + negative fixtures
Type KerML parse lower resolve positive + negative fixtures
Type Featuring KerML parse lower resolve positive + negative fixtures
Unioning KerML parse lower resolve positive + negative fixtures
Allocation Definition SysML parse lower positive + negative fixtures
Allocation Usage SysML parse lower resolve positive + negative fixtures
Attribute Definition SysML parse lower resolve positive + negative fixtures
Attribute Usage SysML parse lower resolve positive + negative fixtures
Binding Connector (as Usage) SysML parse lower positive + negative fixtures
Conjugated Port Definition SysML parse lower resolve positive + negative fixtures
Connection Definition SysML parse lower resolve positive + negative fixtures
Connection Usage SysML parse lower validate positive + negative fixtures
Dependency SysML parse lower resolve positive + negative fixtures
Enumerated Value SysML parse lower resolve positive + negative fixtures
Enumeration Definition SysML parse lower resolve positive + negative fixtures
Enumeration Usage SysML parse lower resolve positive + negative fixtures
Event Occurrence Usage SysML parse lower resolve positive + negative fixtures
Feature Typing SysML parse lower resolve positive + negative fixtures
Flow Connection SysML parse lower resolve validate positive + negative fixtures
Flow Definition SysML parse lower positive + negative fixtures
Individual Definition SysML parse lower resolve positive + negative fixtures
Individual Usage SysML parse lower resolve positive + negative fixtures
Interface Definition SysML parse lower resolve positive + negative fixtures
Interface Usage SysML parse lower resolve validate positive + negative fixtures
Item Definition SysML parse lower resolve positive + negative fixtures
Item Usage SysML parse lower resolve positive + negative fixtures
Occurrence Definition SysML parse lower resolve positive + negative fixtures
Occurrence Usage SysML parse lower resolve positive + negative fixtures
Part Definition SysML parse lower resolve positive + negative fixtures
Part Usage SysML parse lower resolve positive + negative fixtures
Port Definition SysML parse lower resolve positive + negative fixtures
Port Usage SysML parse lower resolve positive + negative fixtures
Portion Usage SysML parse lower resolve positive + negative fixtures
Reference Usage SysML parse lower resolve positive + negative fixtures

Validated-stage counts: parse 0 · lower 0 · resolve 0 · elaborate 0 · validate 0 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
At Most One Return Parameter KerML none
At Most One Transition Fires Per Trigger KerML none
Behavior Not Specialize Structure KerML none
Binary Connector Two Ends KerML none
Binding Connector Two Ends KerML none
Calc Result Is Expression Value KerML none
Class Not Specialize Datatype KerML none
Clock Timeflow Constraint KerML none
Connector Owned By Type KerML none
Constraint Result Boolean KerML none
Core Operator Semantics KerML none
Datatype Not Specialize Class KerML none
Durationof End Minus Start KerML none
Feature Ref Resolves To Bound Value KerML none
Happens Just Before No Intervening KerML none
Invocation Binds Arguments To Input Params KerML none
Local Clock Defaults To Universal Clock KerML none
Model Element Must Be Owned KerML none
No Inherited Name Conflict KerML none
No Name Alias Conflict KerML none
Occurrence Has Lifetime Extent KerML none
Parameter Membership Owning Type KerML none
Result Expression In Function Or Expression KerML none
Return Parameter Membership Owning Type KerML none
Structure Not Specialize Behavior KerML none
Succession Two Ends KerML none
Timeof Continuity Constraint KerML none
Timeof Ordering Constraint KerML none
Unbound Feature Yields Inconclusive Not False KerML none
Unique Owned Member Names KerML none
Accept Action Has Payload SysML none
Action Typed By Behavior SysML none
Actor Membership In Req Or Case SysML none
Allocation Has Ends SysML none
Allocation Typed By Allocation Defs SysML none
Analysis Case At Most One Subject SysML none
Analysis Case Objective Bound To Result SysML none
Assert Constraint Must Be True SysML none
Assignment Action Has Target SysML none
At Most One Each Subaction Kind SysML none
At Most One Objective SysML none
At Most One State Subaction SysML none
At Most One Subject SysML none
At Most One View Rendering SysML none
Attribute Def Not Specialize Item Def SysML none
Attribute Must Not Be Composite SysML none
Attribute Typed By Datatypes SysML none
Calc Always Has Result Parameter SysML none
Calculation Typed By One Calc Def SysML none
Case Has Subject And Objective SysML none
Case Typed By One Case Def SysML none
Concern At Most One Subject SysML none
Connection Has Ends SysML none
Connection Typed By Association SysML none
Constraint Satisfied Iff True SysML none
Constraint Typed By Predicate SysML none
Constraint Usage Discovered SysML none
Decision Node Exactly One Outgoing SysML none
Decision Node One Incoming SysML none
Entry Do Exit Ordering SysML none
Enumeration Typed By One Enum Def SysML none
Exhibit State One Type SysML none
Flow Typed By Interaction SysML none
For Loop Iterates Over Sequence SysML none
Fork Node Concurrent Fanout SysML none
Fork Node One Incoming SysML none
If Action Evaluates Test Then Branch SysML none
Initial State Via Entry Succession SysML none
Interface Has Ends SysML none
Interface Typed By Interface Defs SysML none
Interpolate Returns Null Out Of Bounds SysML none
Item Def Not Specialize Attribute Def SysML none
Item Typed By Item Defs SysML none
Join Node One Outgoing SysML none
Join Node Synchronize All Incoming SysML none
Merge Node Any One Incoming SysML none
Merge Node One Outgoing SysML none
Mref Dimension Must Match Attribute SysML none
Negated Assert Must Be False SysML none
Negated Satisfy Requires Not Satisfied SysML none
No Transition On Unmatched Event SysML none
Objective Membership In Case SysML none
Occurrence Typed By Occurrence Defs SysML none
Parallel State No Transitions SysML none
Part Typed By Part Defs SysML none
Perform Action One Type SysML none
Port Definition Owned Usages Referential SysML none
Port Typed By Port Defs SysML none
Port Usage Nested Usages Referential SysML none
Port Usage Referential SysML none
Quantity Arithmetic Dimension Rules SysML none
Requirement Check Result Is Boolean SysML none
Requirement Constraint In Requirement SysML none
Requirement Constraints Composite SysML none
Requirement Is Constraint Satisfied Iff True SysML none
Requirement Result Is Assumption Implies Required SysML none
Requirement Subject Must Be First Parameter SysML none
Requirement Typed By One Req Def SysML none
Sampled Function Must Be Monotonic SysML none
Satisfy Req One Type SysML none
Send Action Has Payload SysML none
Send Action Initiates Message Transfer SysML none
Stakeholder Membership In Requirement SysML none
State Subaction Owned By State SysML none
State Typed By State Defs SysML none
Subject Is First Parameter SysML none
Subject Membership In Req Or Case SysML none
Transition Feature In Transition SysML none
Transition Firing Order Exit Effect Entry SysML none
Transition Guard Boolean SysML none
Transition Has Source SysML none
Transition Owned By State Or Action SysML none
Transition Selection SysML none
Usage Typed By Definitions SysML none
Use Case At Most One Subject SysML none
Variant Membership In Variation SysML none
Variation Members Are Variants SysML none
Variation Must Be Abstract SysML none
Variation No Chain SysML none
Verdict Criteria Modeled Explicitly SysML none
Verdict Semantics SysML none
Verification Case At Most One Subject SysML none
View Rendering In View SysML none
While Loop Iterates While Test SysML none

Validated-stage counts: parse 8 · lower 8 · resolve 6 · elaborate 0 · validate 0 · execute 0 · format 0 · lsp 0

Concept Language Validated stages Evidence Known gaps
Membership Expose SysML parse lower positive + negative fixtures
Namespace Expose SysML parse lower positive + negative fixtures
Rendering Definition SysML parse lower resolve positive + negative fixtures
Rendering Usage SysML parse lower resolve positive + negative fixtures
View Definition SysML parse lower resolve positive + negative fixtures
View Usage SysML parse lower resolve positive + negative fixtures
Viewpoint Definition SysML parse lower resolve positive + negative fixtures
Viewpoint Usage SysML parse lower resolve positive + negative fixtures

This page and its data artifact were generated by node scripts/generate-reference.mjs (run from website/) at sysml-rs commit 11bd751 on 2026-08-25. Input: the language-pack cards in the pinned Book checkout website/.learn-src/src/language-pack/ (Book pin e243806dc7b47464e1a0ade153ff2bc76616c767). Do not edit the page by hand — regenerate it. npm run gen-check reports drift between the committed artifacts and a fresh generation.