metadata construct not parsed — VerificationMethodKind annotations fail with 'expected a body member'
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 68/100
Research direction
Start with the OpenSysML parser path exercised by conn.load_from_content in the supplied Python reproduction, then compare metadata shorthand handling with SysML v2 formal/2026-03-02 §7.24.1 and Table 22. Done means the example returns ok=True without the “expected a body member” diagnostic and preserves parsing of the VerificationMethodKind annotation.
Written by the indexing model from the issue text.
Description
Summary
The metadata construct in SysML v2 (used for VerificationMethodKind annotations on verification cases) fails to parse in OpenSysML v0.9.0.
Reproduction
import opensysml
conn = opensysml.connect(version='v0.9.0')
src = '''
package MetaTest {
private import VerificationCases::*;
part def Widget { attribute size : Real default = 1.0; }
requirement def SizeReq {
subject widget : Widget;
require constraint { widget.size <= 5.0 }
}
requirement sizeReq : SizeReq;
verification def SizeCheck {
subject widget : Widget;
#verificationMethod = VerificationMethodKind::test;
objective {
verify sizeReq;
}
}
}
'''
m = conn.load_from_content(src, strict=False)
print(m.ok) # False
print(m.diagnostics[0].message) # 'expected a body member'
Expected
ok=True — the metadata shorthand #feature = value should parse per SysML v2 formal/2026-03-02 §7.24 Table 22.
Spec citation
SysML v2 formal/2026-03-02 §7.24.1 (p.141), Table 22 (p.143): Verification Methods Compartment textual notation:
metadata VerificationMethod { kind = (VerificationMethodKind::inspect, ...); }
The #verificationMethod shorthand is the textual notation for this metadata block.
Context
Reported from Open-MBEE/toaster#19 while building an executable SysML v2 tutorial.
- Dominant language
- Go
- Stars
- 24
- Forks
- 5
- Avg merge
- 10h 7m
- Merged PRs (30d)
- 536
Getting set up
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Open-MBEE/OpenSysML
-
Difficulty 4/5 3-5 days Newbie friendliness 52/100
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 38/100
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 52/100
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 58/100
Maintainers usually reply within 1 day
All issues in Open-MBEE/OpenSysML
Similar issues
-
bug
Difficulty 1/5 Under an hour Newbie friendliness 92/100
open-telemetry/opentelemetry-go-compile-instrumentation#1417 ·
Maintainers usually reply within 2 days
-
agent-research-finding agent-research-recommend chore ready-for-agent
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
jordansmall/spindrift#4068 · 1 comment ·
Maintainers usually reply within 1 day
-
Type/Task
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
OpenNSW/nsw-srilanka#537 ·
Maintainers usually reply within 1 day
-
security
Difficulty 2/5 1-2 days Newbie friendliness 62/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
Maintainers usually reply within 1 day