Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

metadata construct not parsed — VerificationMethodKind annotations fail with 'expected a body member'

Open
#608 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
68/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
go
Domain
compilers

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

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Open-MBEE/OpenSysML

All issues in Open-MBEE/OpenSysML

Similar issues

More Go issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.